次の方法で共有


ローカライズしたリソースの追加

アプリケーションによっては、ローカライズで、ファイルやレジストリ キーなどのリソースの変更または追加が必要になる場合があります。 サンプル アプリケーション MNP2000 のローカライズでは、パッケージに 1 つのファイル (Fre.txt) とフランス語バージョンの 2 つの既存のファイル (Help.txt と Readme.txt) を追加する必要があります。

この場合のベスト プラクティスは、英語とフランス語のバージョンがコンピューター上で安全に共存できるようにパッケージをローカライズすることです。 このためには、同じファイル名を持つ 2 つの異なるファイルを決して同じディレクトリにインストールしないようにします。 Help.txt と Readme.txt のファイル名は 2 つの言語バージョンで同じであるので、フランス語パッケージではこれらのファイルを英語とは異なるディレクトリにインストールする必要があります。

フランス語パッケージでは、RedPark フォルダーの新しいサブディレクトリ (French) に Help.txt をインストールします。 Fre.txt を追加すると、元のヘルプ コンポーネントにリソースが追加されるため、ヘルプ コンポーネントのコンポーネント コードはフランス語と英語のパッケージで異なる必要があります。 コンポーネント コードの変更に関する記事で、コンポーネント コードの規則を参照してください。

このファイル名が英語バージョンと競合できないように、フランス語パッケージによって Readme.txt が French ディレクトリにインストールされます。 ファイル Readme.txt はメモ帳コンポーネントと共にインストールされますが、コンポーネントの規則ではコンポーネント コードの変更は必要ありません。 この例では、RedPark.exe と Registry テーブルで指定されたレジストリ値は両方の言語バージョンで共有されるため、メモ帳のコンポーネント コードを変更しないでください。 「レジストリ情報の追加」を参照してください。

ソース ファイルから英語バージョンの Help.txt と Readme.txt を削除し、Help.txt、Readme.txt、Fre.txt の新しいフランス語バージョンを追加します。 ローカライズされたパッケージでは、次のようにソースからターゲットにファイルのインストールをマップする必要があります。

ファイル 説明 ソースのパス ターゲットのパス
Redpark.exe テキスト エディターの実行可能ファイル。 C:\Sample\Notepad\Redpark.exe [ProgramFilesFolder]\Red_Park\French\Redpark.exe
Readme.txt 情報ファイル。 C:\Sample\Notepad\Readme.txt [ProgramFilesFolder]\Red_Park\French\Readme.txt
Help.txt ヘルプ マニュアル C:\Sample\Notepad\Help.txt [ProgramFilesFolder]\Red_Park\French\Help.txt
Fre.txt 電話の一覧 C:\Sample\Notepad\Fre.txt [ProgramFilesFolder]\Red_Park\French\Fre.txt

 

SDK で提供されているデータベース エディター Orca または別のエディターを使用して、Directory テーブルを開き、新しいディレクトリである French のインストール用のレコードを追加します。

Directory テーブル

ディレクトリ Directory_Parent DefaultDir
TARGETDIR SourceDir
ProgramFilesFolder TARGETDIR .
ARTSDIR NOTEPADDIR Arts:Events
HOLDIR MONDIR .:Holidays
MENUDIR NOTEPADDIR メニュー
MONDIR NOTEPADDIR ゲート
NOTEPADDIR ProgramFilesFolder Red_Park:Notepad
SPORTDIR NOTEPADDIR Sports:Events
FRENCHDIR NOTEPADDIR French:.

 

テーブル エディターを使用して、MNPFren.msi のヘルプ コンポーネントの ComponentId を新しい GUID に変更します。

Component テーブル

コンポーネント ComponentId Directory_ 属性 条件 Keypath
Baseball {F54ABAC0-33F2-11D3-91D7-00C04FD70856} SPORTDIR 2 Baseball.txt
コンサート {76FA7A80-33F6-11D3-91D8-00C04FD70856} ARTSDIR 2 Concert.txt
Dance {CCF834A1-33F8-11D3-91D8-00C04FD70856} ARTSDIR 2 Dance.txt
Football {CCF834A0-33F8-11D3-91D8-00C04FD70856} SPORTDIR 2 Football.txt
ヘルプ {9ED21229-FE3C-4FE9-B01D-57E00224FD0B} NOTEPADDIR 2 Help.txt
January {CF0BC690-33C9-11D3-91D6-00C04FD70856} MONDIR 2 January.txt
NewYears {A42D9140-33D8-11D3-91D6-00C04FD70856} HOLDIR 2 NewYears.txt
メモ帳 {19BED232-30AB-11D3-91D3-00C04FD70856} FRENCHDIR 2 Redpark.exe

 

テーブル エディターを使用して、MNPFren.msi の File テーブル に Fre.txt を追加します。 ローカライズされたファイルの Language フィールドにフランス語の LANGID を入力します。 それ以外のすべてが等しく、インストールされているファイルの言語がコンピューター上のファイルとは異なる場合、インストーラーではインストールされている製品と一致する言語のファイルを優先します。 言語に依存しないファイルは単なる別の言語として扱われるため、インストールされている製品が再び優先されます。 詳細については、「ファイルのバージョン管理ルール」を参照してください。

File テーブル

ファイル Component_ FileName FileSize バージョン Language 属性 シーケンス
Baseball.txt Baseball Baseball.txt 1000 0 1
Concert.txt コンサート Concert.txt 1000 0 1
Dance.txt Dance Dance.txt 1000 0 1
Football.txt Football Football.txt 1000 0 1
Help.txt ヘルプ Help.txt 1000 1036 0 1
January.txt January January.txt 1000 0 1
NewYears.txt NewYears NewYears.txt 1000 0 1
Redpark.exe メモ帳 Redpark.exe 45328 0 1
Readme.txt メモ帳 Readme.txt 1000 1036 0 1
Fre.txt ヘルプ Fre.txt 1000 1036 0 1

 

これで、サンプルのローカライズは完了です。