IsolateComponents アクション
IsolateComponents アクションは、コンポーネント (通常は共有 DLL) のコピーを、特定のアプリケーション (通常は .exe) で使用するためにプライベートな場所にインストールします。 これにより、コンピューター上の共有の場所にインストールできるコンポーネントの他のコピーからアプリケーションが分離されます。 詳細については、「分離コンポーネントの 」を参照してください。
このアクションは、IsolatedComponent テーブル の各レコードを参照し、Component_Shared フィールドにリストされているコンポーネントのファイルを、Component_Application フィールドにリストされているコンポーネントに関連付けます。 インストーラーは、Component_Applicationと同じディレクトリにComponent_Sharedのファイルをインストールします。 インストーラーは、このディレクトリにファイル (長さが 0 バイト) を生成し、Component_Applicationのキー ファイルの短いファイル名 (通常は .exeと同じファイル名) を .local で追加します。 IsolatedComponent アクションは、Component_Applicationのインストールには影響しません。 Component_Applicationをアンインストールすると、Component_Shared ファイルと .local ファイルもディレクトリから削除されます。
シーケンスの制限
IsolateComponents アクションは、InstallUISequence テーブル と InstallExecuteSequence テーブルでのみ使用できます。 このアクションは、CostInitialize アクション の後、および CostFinalize アクションの前に行う必要があります。
ActionData メッセージ
ActionData メッセージはありません。
備考
IsolateComponents アクションの [条件] 列が True に評価されるか、空白のままにされている場合、インストーラーは、IsolatedComponent テーブルに一覧表示されているすべてのコンポーネントを分離します。 [条件] 列が False と評価された場合、インストーラーは IsolatedComponent テーブルを無視し、コンポーネントを通常どおり共有します。 RedirectedDllSupport プロパティを使用して、このアクションを条件にすることができます。 詳細については、「シーケンス テーブル の使用」を参照してください。