実際、アンマネージ COM サーバーには、多くの場合、タイプ ライブラリがアンマネージ リソースとして埋め込まれています。ビルド チェーンは、タイプ ライブラリを生成するために midl.exe ツールによってコンパイルされた、COM インターフェイスとコクラスを記述する IDL ファイルから始まります。次に、rc.exe リソース コンパイラは、TYPELIB のエントリを含む .rc リソース スクリプトを .res ファイルにコンパイルします。次に、リンカーはそれを DLL に埋め込みます。
これは通常、[ComVisible] .NET コードから作成された COM サーバーに対して行われる方法ではなく、同じ方法で構築されていません。非常に問題のある部分は、DLL がビルドされるまでタイプ ライブラリを取得できないことです。これは鶏が先か卵が先かの問題です。
不可能ではありません。確実に rc.exe を実行し、/win32res コンパイラ オプションで埋め込まれた .res ファイルを取得できます。プロジェクト + プロパティ、[アプリケーション] タブ、[リソース ファイル] ラジオ ボタンから IDE にも表示されます。ただし、ビルドシステムからはまったく助けが得られません。基本的に、2 つの別々の手順で DLL をビルドする必要があります。最初にタイプ ライブラリを作成し、もう一度それを埋め込みます。リソース スクリプトの記述方法を知っていて、Windows SDK コマンド ライン ツールの実行に慣れていて、DLL を非常に安定した状態にして、繰り返し実行する必要がない場合にのみ、これを熟考してください。この回答で rc.exe の実行について詳しく説明します。