MUI リソース管理

グローバル化されたアプリケーションでは、ローカライズされたリソースとして表されるメニュー、ダイアログ ボックス、ヘルプ文字列、その他の項目など、さまざまなユーザー インターフェイス要素を定義する必要があります。 ユーザー インターフェイス言語は、アプリケーションの設定の 1 つになります。 このセクションでは、アプリケーション リソースの作成に使用することをお勧めする MUI リソース テクノロジについて説明します。

MUI リソース テクノロジの機能

Windows Vista 以降で公開されている MUI リソース テクノロジには、次の特性があります。

  • 言語固有のリソース ファイルは、アプリケーション コード バイナリとは別に格納されるため、コードの変更がリソースに影響を与えません。
  • 複数の言語のリソースは、1 つのインストールまたは言語ごとに個別のインストールにデプロイできます。
  • リソースが読み込まれ、ユーザーによって設定されたアプリケーションの言語に従って表示されます。

このテクノロジは、言語固有のファイルで定義されているリソースを、言語に依存しない (LN) ファイルの特定のバージョンに関連付けます。 LN ファイルは、アプリケーション コードバイナリおよび言語に依存しないリソースを表す Win32 PE ファイルです。 ファイルの関連付けでは、関連付けられているすべてのファイルに含まれるリソース構成データに反映されたチェックサムが使用されます。 リソース ローダーはチェックサムを使用して、ファイルに必要なリソースの同じバージョンが保持されていることを確認します。 また、フォルダー名を使用して言語固有のファイル内の言語も検証します。 適切な関連付けが確立されていない場合、ローダーはリソース ファイルを読み込まれません。

具体的には、メイン チェックサムは、ファイルのメジャー バージョン番号とマイナー バージョン番号と、バージョン リソースから取得されるファイル名 (大文字と小文字を区別) から計算されます。 このチェックサムは、同じコンポーネントの RTM バージョンと Service Pack バージョンの間で変更しないでください。 さらに、サービス チェックサムを使用して、読み込む言語固有のリソース ファイルの適切なバージョンを決定します。 このチェックサムは、ファイル内のローカライズ可能なリソースに基づいて計算されます。

MUI には、アプリケーションのリソース ファイルを準備するために使用できる 2 つのリソース ユーティリティが用意されています。 MUIRCT と呼ばれる MUI 固有のユーティリティを使用すると、LN ファイルと関連する言語固有のリソース ファイルを作成できます。 Windows Vista 以降では、MUI リソース テクノロジに従ってこれらのファイルをビルドするように Windows RC コンパイラも変更されています。 これらのツールの構文と詳細については、「 リソース ユーティリティ」を参照してください。

LN ファイル

MUI アプリケーションの LN ファイルには、アプリケーションのすべての言語バージョンで共有およびインストールされる実行可能コードと言語に依存しないリソースが含まれています。

Language-Specific リソース ファイル

通常、言語固有のリソース ファイルには、ユーザー インターフェイス文字列と、特定の言語のローカライズを必要とするその他の要素が含まれます。 MUI アプリケーションでは、サポートされている言語ごとに 1 つの言語固有のリソース ファイルが使用されます。 アプリケーションの LN ファイルは、言語固有のリソース ファイルごとに同じです。

MUI リソース テクノロジを使用してビルドすると、言語固有のファイルには ".mui" 拡張子が付き、次のように処理されます。

  • 特定の LN ファイルに関連付けられている言語固有のファイルはすべて同じファイル名を共有します。これは、拡張子 ".mui" を対応する LN ファイルの完全なファイル名 (拡張子付き) に追加することによって形成されます。 たとえば、"Myfile.dll" という名前の LN ファイルには、"Myfile.dll.mui" という名前の言語固有のファイルがあります。
  • 言語固有のファイルは、LN ファイルを含むフォルダーのサブフォルダーに存在します。 各フォルダー名には言語が反映されます。

リソース構成データ

LN ファイルを言語固有のファイルに関連付けるために、MUI リソース テクノロジはチェックサムを含むリソース構成データを使用します。 リソースビルド手順では、この情報を各 LN および言語固有のファイルの RC 構成セクションに配置します。 この情報の人間が判読できる形式は、MUIRCT ユーティリティを介して入手できます。 詳細については、「 リソース ユーティリティ」を参照してください。

多言語ユーザー インターフェイスについて

リソース ユーティリティ