COM 以外のコンポーネントをプライベートな場所にインストールする
クライアント アプリケーションで常に COM 以外のサーバーの同じコピーを使用するように強制するには、アプリケーションのインストール パッケージを作成して、サーバーとクライアントの間の関係 分離されたコンポーネント 指定します。 これにより、クライアント アプリケーションによって排他的に使用される場所にサーバー コンポーネントのプライベート コピーがインストールされます。 パッケージを作成するときは、次の操作を行います。
- サーバー DLL と .exe クライアントを別々のコンポーネントに配置します。
- IsolatedComponent テーブルに、Component_Shared列にクライアント コンポーネントを、Component_Application列にクライアント アプリケーションと共に レコードを入力します。 シーケンス テーブルに IsolateComponents アクション を含めます。
- msidbComponentAttributesSharedDllRefCount ビットを、コンポーネント テーブルの Component_Shared のレコード に設定します。 インストーラーでは、他のインストール テクノロジと共有している場合に、共有ファイルと登録を保護するために、共有場所にこのグローバル 参照カウントが必要です。
- コンポーネント間で共有登録済みパスを作成することは避けてください。