2

私のソリューションは複数のプロジェクトで構成されており、出力タイプが Windows アプリケーションであるプロジェクトを除いて、そのすべてがタイプ クラス ライブラリです。アプリケーションは他のすべてのプロジェクトを参照します。また、いくつかのプロジェクトとアプリケーションによって参照される COM コンポーネントもあります。

Visual Studio で参照されている COM コンポーネントの Isolated プロパティを TRUE に変更することで、regfree COM をセットアップできます。ソリューションが正常にビルドされ、特定のアセンブリまたはアプリケーション用に生成されたマニフェスト ファイルを確認できます。

さて、私の質問は、COM コンポーネントを参照するすべてのプロジェクトに対してこれを行う必要があるかということです。はいの場合、Isolated プロパティを複数のプロジェクトで TRUE に設定できない (ビルド エラーが発生する) ことがわかっているので、これを回避するにはどうすればよいですか?

私は.netに比較的慣れておらず、regfree COMについてあまり知りません(私がしていることはregfree COMであると思いますか?)。この問題について私が得ることができるどんな助けも大歓迎です。ありがとう。

現在、VS 2008 を使用しています。

編集: 複数のプロジェクトで Isolated プロパティが TRUE に設定されている場合、ビルド エラーは、両方のプロジェクトの生成されたマニフェストで myCOMcomponent.ocx が定義されていることを示します。

4

1 に答える 1

1

各 COM コンポーネントは、アプリケーションごとに 1 回だけ分離できます。そのため、エラーが発生します。そのコンポーネントの機能を公開するラッパー ライブラリを作成し、COM コンポーネントを直接呼び出す代わりに、他のすべてでそのラッパーを呼び出すようにすると、この問題を回避できます。この方法では、COM コンポーネントへの参照が 1 つしかないため、分離する必要があるのは 1 回だけです。

于 2011-03-02T17:53:08.257 に答える