モジュールが別の既定の言語を持つデータベースにマージされる場合、マージ ツールは、最終的な言語を提供するために、モジュールに言語変換を適用する必要がある場合があります。 詳細については、「 複数言語マージ モジュール」を参照してください。
言語変換はモジュールの .msm ファイルに格納され、名前と形式は MergeModule.Lang#### である必要があります。 #### は、最終的な言語の up-to 4 桁の LANGID を 表します。 たとえば、MergeModule.Lang1033、MergeModule.Lang9、MergeModule.Lang0 は、米国英語、世界英語、言語に依存しない変換を行います。 これらは 埋め込み変換 と同じであり、.msm ファイル内のサブストーラーに追加できます。
言語変換では、次の操作を行う必要があります。
- ModuleSignature テーブルの [言語] 列の既定の言語を、モジュールの新しい言語に変更します。
- ModuleComponents テーブルの [言語] 列の既定の言語をモジュールの新しい言語に変更します。 変換では、このテーブルの行を追加または削除できます。
- 必要に応じて、RequiredLanguage 列の言語を変更するか、行を ModuleDependency テーブルに追加または削除します。
- 必要に応じて、ExcludedLanguage 列の言語を変更するか、行を ModuleExclusion テーブルに追加または削除します。
- 変換は、コンポーネント、ファイル、レジストリ エントリ、アクションの追加や削除など、モジュールに対して有効な変換操作を実行できます。
モジュールを開くときに言語変換を適用しても、既定の言語やモジュールでサポートされている言語は変更されず、要求されている言語だけが変更されることに注意してください。 したがって、 テンプレートの概要 プロパティは変更されません。モジュールでサポートされているすべての言語が、最初にリストされている既定の言語で既に一覧表示されている必要があります。
可能なすべての言語変換で必要なすべてのファイルは、通常、モジュールに含まれる 1 つのキャビネット ファイルに格納されます。 このキャビネット ファイルを言語変換で変更することは実用的ではないため、キャビネット ファイル、ファイル テーブル、および言語変換でグローバル ファイル シーケンスを使用することをお勧めします。 詳細については、「複数言語マージ モジュールの CAB でのファイル シーケンスの順序付け」を参照してください。