When merging a module into an installation database, there are two important languages. The first is the language of the target installation package specified by ProductLanguage in the Property Table. The second is the language of the merge module that appears in the Language column of the ModuleSignature Table.
The language of the installation package can be passed to the module by the merge tool when the package is opened for a merge. However, sometimes it may be necessary to disregard the language of the target, and request that the module be opened in another language, for example, an English package installing both the English and German resources from the module.
When opening a module with a language request, the merge tool checks the requested language against the languages that are specified in the Language column of the ModuleSignature Table.
The following process is used to determine which language to use.
To determine which language to use
- If the language in the ModuleSignature Table is equal or more general than the requested language, the module opens.
- If the module supports the exact language requested, that language is used.
- If the module supports the language group of the language requested that language group is used, for example, check 9 if 1033 was requested but not found in step 2.
- Check if there is a language transform that changes the module to neutral.
- If none of the previous steps succeed, the module does not support the requested language and the merge fails.
Send comments about this topic to Microsoft
Build date: 8/13/2009
© 2009 Microsoft Corporation. All rights reserved.