我正在自动化构建遗留产品的过程中遇到了困难......
我有一个在 VC++ 6.0 中使用 midl 编译的 .idl 文件,以生成一个 .tlb、.h 和 .c 文件,该文件有一个手动构建步骤要添加:
struct StructDef;
就在生成的 .h 文件中的 MIDL_INTERFACE 之前。.h 文件的其余部分使用该定义,在添加之前我无法编译。
我正在寻找一种使用结构定义(首选)自动生成头文件的方法,或者至少是一种通过自定义构建步骤自动生成此代码添加步骤的方法。
我正在自动化构建遗留产品的过程中遇到了困难......
我有一个在 VC++ 6.0 中使用 midl 编译的 .idl 文件,以生成一个 .tlb、.h 和 .c 文件,该文件有一个手动构建步骤要添加:
struct StructDef;
就在生成的 .h 文件中的 MIDL_INTERFACE 之前。.h 文件的其余部分使用该定义,在添加之前我无法编译。
我正在寻找一种使用结构定义(首选)自动生成头文件的方法,或者至少是一种通过自定义构建步骤自动生成此代码添加步骤的方法。
#pragma midl_echo
指示 MIDL 将任意一段文本插入到生成的头文件中。你可以像这样使用它:
#pragma midl_echo("struct StructDef;")
该cpp_quote
属性似乎提供了类似的功能。
或者,如果您安装了Cygwinsed
,您可能会发现在自定义构建步骤中对头文件进行后处理更简单(或者更可取) 。那也行。