次の方法で共有


MUI ショートカットの例

このセクションでは、多言語ユーザー インターフェイス (MUI) で使用するために、Windows インストーラー ショートカット テーブルにリソース文字列を追加する方法について説明します。

Windows インストーラー 2.0 と Windows インストーラー 3.0: サポートされていません。 この例では、Windows インストーラー 4.0 が必要です。

MUI 対応アプリケーションの開発方法については、多言語ユーザー インターフェイス (MUI) ドキュメントを参照してください。

Windows Vista 多言語ユーザー インターフェイスで使用されるリソース文字列を Windows インストーラー パッケージに追加するには:

  1. すべての言語に依存しないファイルと言語ファイルの情報を ファイル テーブルに追加します。 たとえば、ファイルは言語に依存しないファイル (msimsg.dll) と、英語 (msimsgen.dll.mui)、日本語 (msimsgja.dll.mui)、中国語 (msimsgcs.dll.mui) の言語ファイルで構成されている場合があります。 各ファイルは、異なるコンポーネントに属することができます。 各ファイルには、長いファイル名と短いファイル名の両方を指定できます。 この例の場合、次の情報を ファイル テーブルに追加できます。

    ファイル テーブルの (部分)

    ファイル コンポーネント_ FileName
    msimsgmuija MSIMSG_MUI_JA msimsgja.dll|msimsg.dll.mui
    msimsgmuics MSIMSG_MUI_CS msimsgcs.dll|msimsg.dll.mui
    msimsgmuien MSIMSG_MUI_EN msimsgen.dll|msimsg.dll.mui
    msimsgdll MSIMSG msimsg.dll

     

  2. これらのコンポーネントの コンポーネント テーブル に情報を追加します。 各コンポーネントには、Component テーブルの ComponentId フィールドに入力する必要がある一意の GUID 識別子があります。 コンポーネントに属するファイルは、そのコンポーネントの KeyPath として機能できます。 各コンポーネントを含むディレクトリは、Directory_ フィールドで指定できます。 次の情報をコンポーネント テーブルに追加できます。

    コンポーネント テーブルの (部分)

    コンポーネント ディレクトリ_ KeyPath
    MSIMSG_MUI_JA MUIFolder_JA msimsgmuija
    MSIMSG_MUI_CS MUIFolder_CS msimsgmuics
    MSIMSG_MUI_EN MUIFolder_EN msimsgmuien
    MSIMSG MUIFolder msimsgdll

     

  3. Directory テーブルを編集して、コンポーネントが正しいディレクトリにインストールされるようにします。 ショートカットがインストールされるディレクトリに関する情報を必ず含めます。 たとえば、DesktopFolder ディレクトリにあるコンポーネントとショートカットをインストールするパッケージのディレクトリ テーブルに、次の情報が追加される場合があります。

    ディレクトリ テーブルの (一部)

    ディレクトリ Directory_Parent DefaultDir
    TARGETDIR SourceDir
    MsiTest TARGETDIR MsiTest:.
    MUIFolder MsiTest MUI
    MUIFolder_CS MUIFolder cs-CZ
    MUIFolder_EN MUIFolder en-US
    MUIFolder_JA MUIFolder ja-JP
    DesktopFolder TARGETDIR .

     

  4. 各ショートカットの ショートカット テーブルに行を追加します。 たとえば、ショートカット テーブルには、DirectoryFolder ディレクトリにインストールされている 2 つのショートカット Quick1 と Quick2 に関する次の情報が含まれる場合があります。 各ショートカットは、[ターゲット] フィールドで指定された機能に属します。 ショートカットに関連付けられているアイコンは、Icon_ フィールドと Icon テーブルで指定できます。

    ショートカット テーブルの (一部)

    近道 ディレクトリ_ コンポーネント_ ターゲット アイコン
    Quick1 DesktopFolder MSIMSG FeatureChild1_Local HelpFileIcon.exe
    Quick2 DesktopFolder MSIMSG FeatureChild1_Local HelpFileIcon.exe

     

  5. フィーチャ所有のショートカットが属するフィーチャの フィーチャ テーブル テーブルに情報を追加します。 ショートカットがアクティブになると、インストーラーは、この機能に属するすべてのコンポーネントがインストールされていることを確認してから、ショートカット テーブルのComponent_列に指定されたコンポーネントのキー ファイルを起動します。 この例の場合、次の情報をFeatureParent1_Local機能のフィーチャー テーブル テーブルに追加できます。

    フィーチャー テーブルの (一部)

    特徴 Feature_Parent タイトル 属性
    FeatureParent1_Local FeatureParent1_Local 16
    FeatureChild1_Local FeatureParent1_Local FeatureParent1_Local 0

     

  6. 新しいショートカットごとに、ショートカット テーブルの DisplayResourceDLL、DisplayResourceId、DescriptionResourceDLL、DescriptionResourceId の各フィールドにリソース文字列情報追加します。 DisplayResourceDLL フィールドと DescriptionResourceDLL フィールドには、Formatted 文字列形式のリソース文字列が含まれています。 書式設定された文字列では、書式設定された 形式の [#filekey] 規則を使用できます。 DisplayResourceId フィールドと DescriptionResourceId フィールドに、リソース文字列の表示インデックスと説明インデックスを追加します。

    ショートカット テーブルの (一部)

    近道 DisplayResourceDLL DisplayResourceId DescriptionResourceDLL DescriptionResourceId
    Quick1 [#msimsgdll] 36 [#msimsgdll] 37
    Quick2 [#msimsgdll] 38 [#msimsgdll] 39

     

  7. パッケージをインストールした後、多言語ユーザー インターフェイスが期待どおりに動作していることを確認するためにテストします。