驱动程序项目的消息编译器属性

设置消息编译器 (MC.exe) 工具的属性。 编译器将生成消息资源文件,你可以将其添加到项目中。

例如,如果你使用 Windows 事件跟踪 (ETW) 内核模式 API 来为内核模式驱动程序添加事件跟踪,则可使用消息编译器来创建一个包含事件提供程序、事件属性、通道和事件的定义的头文件。 你必须在源代码中包括此头文件。 消息编译器将创建一个资源编译器脚本 (*.rc),你可以将其添加到项目文件中。

设置驱动程序项目的消息编译器属性

  1. 打开驱动程序项目的属性页。 在“解决方案资源管理器”中,选择并按住(或右键单击)驱动程序项目,然后选择“属性”
  2. 在驱动程序项目的属性页中,选择“配置属性”,然后选择“消息编译器”
  3. 设置项目属性。

如果你将消息文本文件 (.mc) 或清单 (.man) 添加到解决方案,则此属性页可用。

选项 说明

其他选项

指定要传递至消息编译器 (MC.exe) 工具的其他选项。

Ansi 输入文件

指定输入文件包含 ANSI 内容(这是默认设置)。 (-a)

Bin 文件中的 Ansi 消息

指定输出 .bin 文件中的消息应该为 ANSI。 (-A)

基线路径

此路径必须指向包含基线操作创建的 .BIN 文件的文件夹。 (-t <目录>)

基线资源路径

包含基线清单文件的文件夹。 (-s <目录>)

调试输出路径

用于放置 .dbg C 包含文件的路径。 (-x <路径>)

启用标注宏

添加标注宏,以便在日志记录时调用用户代码。 不适用于 C#,已忽略。 (-co)

启用调试输出路径

允许编译器放置由调试输出路径属性指定的 .dbg C 包含文件。

生成的头文件的文件扩展名

指定生成的头文件的扩展名。 (-e <扩展名>)

生成基线资源

创建检测基线。

生成 C# (托管)日志记录类

生成一个 C#(托管)日志记录类,你可以通过调用其中包含的方法来将事件记录到清单中。 (-cs <命名空间>)

生成包含计数器名称和 GUID 的头文件

使用此选项来指定你想要编译器在其中放置生成的头文件的文件夹。

生成内核模式日志记录宏

生成内核模式日志记录宏。 (-km)

生成 MOF 文件

为所有函数和生成的宏生成下级支持。 MOF 文件将通过清单生成。 MOF 文件将置于 -h 选项 (-mof) 指定的位置。

生成 OLE2 头文件

生成 OLE2 头文件。 (-o)

生成静态 C# (托管)日志记录类

生成一个静态 C#(托管)日志记录类,你可以通过调用其中包含的方法来将事件记录到清单中。 (-css <命名空间>)

生成用户模式日志记录宏

生成用户模式日志记录宏。 (-um)

生成文件基名

指定所有生成文件的基名。 (-z <基名>)

生成 RC 和二进制消息文件路径

指定生成的 RC 和二进制消息文件的路径。

头文件路径

指定生成的头文件的路径。 (-h <路径>)

最大消息长度

使用此参数来让编译器在任何消息超出字符长度时生成警告。 (-m <长度>)

前缀宏名称

使用此参数来覆盖编译器用于记录宏名称和方法名称的默认前缀。 (-p <前缀>)

RC 文件路径

你想要编译器在其中放置生成的资源编译器脚本 (.rc file) 和生成的 .bin 文件的文件夹。 (-r <路径>)

从符号名称中删除字符

使用此参数来从你为事件指定的符号名称开始删除字符。 (-P <前缀>)

设置客户位

在整个消息 ID 中设置客户位。 (-c)

终止 NULL 消息

终止消息表中为 NULL 的所有字符串。 (-n)

Unicode 输入文件

指定包含 Unicode 内容的输入文件。 (-u)

默认值为 ANSI。

Bin 文件中的 Unicode 消息

指定输出 .bin 文件中的消息为 Unicode。 (-U)

这是默认情况。

使用输入的基名

使用此参数可让编译器将输入文件的基名用作输出 .bin 文件的名称。 (-b)

使用十进制值

使用此参数即可在头文件的 Severity 和 Facility 常量中使用十进制值,而不是十六进制值。 (-d)

针对基线资源进行验证

当你创建新版清单并想要针对你使用 -s 选项创建的基线检查其是否与应用程序兼容时,可以使用此参数。

详细

使用此选项来生成详细输出。 (-v)