2

レガシー製品のビルドを自動化する過程にあり、壁にぶつかっています...

midl を使用して VC++ 6.0 でコンパイルされた .idl ファイルがあり、.tlb、.h、および .c ファイルを生成します。このファイルには、追加する手動のビルド手順があります。

struct StructDef;

生成された .h ファイルの MIDL_INTERFACE の直前。.h ファイルの残りの部分は定義を使用しており、これが追加されるまでコンパイルできません。

構造体定義 (推奨) を使用してヘッダー ファイルを自動生成する方法、または少なくともカスタム ビルド ステップを介してこのコード追加ステップを自動化する方法を探しています。

4

1 に答える 1

2

#pragma midl_echo生成されたヘッダーファイルに任意のテキストを挿入するようにMIDLに指示します。次のように使用できます。

#pragma midl_echo("struct StructDef;")

このcpp_quote属性は同様の機能を提供しているようです。

または、Cygwinsedをインストールしている場合は、カスタムビルドステップでヘッダーファイルを後処理する方が簡単(または単に望ましい)である場合があります。それもうまくいくでしょう。

于 2009-11-17T23:17:33.107 に答える