COM コンポーネントとして配布されているか、.manifest ファイルを使用して参照できるサードパーティ コンポーネントをアプリケーションで使用しています。いずれにしても、CoCreateInstance() を使用してロードされます。サード パーティ コンポーネントに必要なファイルは、サブフォルダーにあります。コンポーネント開発者から、実行可能ファイルの Visual Studio 2010 設定 (「マニフェスト」セクション) に .manifest ファイルを含めるように言われました。コンポーネントの読み込みは問題なく動作します。
現在、DLL からのみサード パーティ コンポーネントを使用して、サード パーティ コンポーネントから使用される機能をカプセル化しています。LoadLibrary() を使用して、DLL を動的にロードしています。コンポーネントの使用は引き続き機能します。マニフェスト ファイルが参照されている EXE によって読み込まれる DLL 内からコンポーネントを使用できます。
EXE をサードパーティ コンポーネントからさらに分離するために、コンポーネントが使用される唯一の場所である DLL にもマニフェストを移動したいと思います。このようにして、私が書きたいすべての新しい EXE が DLL を使用し、機能を間接的に使用することができます。今のところ、すべての新しい EXE に mainfest を追加する必要がありますが、それはしたくありません。
EXE で使用されるマニフェストを DLL に移動する方法はありますか?