“MIDL”属性页
在一个使用 COM 的 C++ 项目中,MIDL 属性页可用作 .IDL 文件的项属性。 使用它们来配置 MIDL 编译器。 有关如何以编程方式访问 C++ 项目的 MIDL 选项的信息,请参阅 VCMidlTool 对象。 另请参阅常规 MIDL 命令行语法。
“常规”属性页
预处理器定义
指定一个或多个 define,包括 MIDL 宏 (/D [macros])。
附加包含目录
指定要添加到 include 路径的一个或多个目录 (/I[path])。
其他元数据目录
指定包含 Windows.Foundation.WinMD 文件的目录 (/metadata_dir [path])。
启用 Windows 运行时
启用 Windows 运行时语义以创建 Windows 元数据文件 (/winrt)。
忽略标准 Include 路径
忽略当前目录和 INCLUDE 目录 (/no_def_idir)。
与 MkTypLib 兼容
强制与 mktyplib.exe 版本 2.03 兼容 (/mktyplib203)。
警告级别
选择 MIDL 代码错误的严格性 (/W)。
选择项
- 1
- 1
- 2
- 3
- 4
将警告视为错误
使 MIDL 能够将所有警告视为错误 (/WX)。
取消显示启动版权标志
取消显示启动版权标志和信息消息 (/nologo)。
C 编译器 Char 类型
指定 C 编译器的将用来编译生成代码的默认字符类型。 (/char signed|unsigned|ascii7)。
选择项
- 带符号 - 带符号
- 无符号 - 无符号
- Ascii - Ascii
目标环境
指定目标环境 (/env arm32|win32|ia64|x64)。
选择项
- 未设置 - Win32
- Microsoft Windows 32 位 - Win32
- Itanium 上的 Microsoft Windows 64 位 - IA64
- Microsoft Windows ARM - ARM
- Microsoft Windows ARM64 - ARM64
- x64 上的 Microsoft Windows 64 位 - X64
生成无存根代理
使用扩展和无存根代理为对象接口生成完全解析存根(/Oicf、/Oif)。
取消编译器警告
取消显示编译器警告消息 (/no_warn)。
应用程序配置模式
允许在 IDL 文件中选择的 ACF 特性 (/app_config)。
区域设置 ID
为输入文件、文件名和目录路径指定 LCID (/lcid DECIMAL)。
多处理器编译
同时运行多个实例。
输出属性页
输出目录
指定输出目录 (/out [directory])。
元数据文件
指定生成的元数据文件的名称 (/winmd filename)。
头文件
指定所生成的头文件的名称 (/h filename)。
DllData 文件
指定 DLLDATA 文件的名称 (/dlldata filename)。
IID 文件
指定接口标识符文件的名称 (/iid filename)。
代理文件
指定代理文件的名称 (/proxy filename)。
生成类型库
指定不生成类型库 ([/notlb] for no)。
类型库
指定类型库文件的名称 (/tlb filename)。
生成客户端存根文件
仅生成客户端存根文件 (/client [stub|none])。
选择项
- 存根 - 存根
- 无 - 无
生成服务器存根文件
仅生成服务器存根文件 (/server [stub|none])。
选择项
- 存根 - 存根
- 无 - 无
客户端存根文件
指定客户端存根文件 (/cstub [file])。
服务器存根文件
指定服务器存根文件 (/sstub [file])。
类型库格式
指定类型库文件格式 ([/oldtlb|/newtlb])。
选择项
- NewFormat - 新格式
- OldFormat - 旧格式
高级属性页
C 预处理选项
指定要传递到 C 编译器预处理器的开关 (/cpp_opt switches)。
取消定义预处理器定义
指定一个或多个 undefine,包括 MIDL 宏 (/U [macros])。
启用错误检查
选择错误检查选项 ([/error all|none])。
选择项
- EnableCustom - 全部
- 全部 - 全部
- 无 - 无
检查分配
检查内存不足错误 (/error allocation)。
检查边界
检查大小与传输长度规范 (/error bounds_check)。
检查枚举范围
检查枚举值是否在允许的范围内 (/error enum)。
检查引用指针
检查引用指针是否为非 null (/error ref)。
检查存根数据
发出其他检查,检查服务器端存根数据有效性 (/error stub_data)。
预置“ABI”命名空间
将“ABI”命名空间预置到所有类型。 (/ns_prefix)。
验证参数
生成其他信息以验证参数 (/robust | /no_robust)。
结构成员对齐
指定目标系统中结构的封装级别 (/ZpN)。
选择项
- 未设置 - 未设置
- 1 字节 - Zp1
- 2 字节 - Zp2
- 4 字节 - Zp4
- 8 字节 - Zp8
重定向输出
将输出从屏幕重定向到某个文件 (/o file)。
最低目标系统
设置最低目标系统 (/target STRING)。