在midl生成的头文件中定义结构

时间:2009-11-17 22:32:28

标签: c++ visual-studio visual-c++ midl visual-studio-6

我正在自动构建传统产品并且已经碰壁了......

我有一个.idl文件,使用midl在VC ++ 6.0中编译生成.tlb,.h和.c文件,该文件有一个手动构建步骤要添加:

struct StructDef;

在生成的.h文件中的MIDL_INTERFACE之前。 .h文件的其余部分使用了这个定义,在添加之前我无法编译。

我正在寻找一种使用struct定义(首选)自动生成头文件的方法,或者至少是一种通过自定义构建步骤自动执行此代码添加步骤的方法。

1 个答案:

答案 0 :(得分:2)

#pragma midl_echo指示MIDL将任意一段文本插入生成的头文件中。您可以像这样使用它:

#pragma midl_echo("struct StructDef;")

cpp_quote属性似乎提供了类似的功能。

或者,如果您安装了Cygwin,您可能会发现在自定义构建步骤中使用sed对头文件进行后处理会更简单(或者更可取)。那也行。