TraceWPP 任务
Windows 驱动程序工具包 (WDK) 提供 TraceWPP 任务,以便你可以在使用 MSBuild 生成驱动程序时运行 tracewpp.exe 工具。 tracewpp.exe 工具用于实现 WPP 软件跟踪。
WppEnabled 是 ClCompile 项的新元数据,用于启用对源文件的跟踪。 Wpp 任务将在整个 ClCompile 项集合中运行,并为其 WppEnabled 元数据设置为 TRUE 的每个项调用 tracewpp.exe。
WppEnabled 元数据已添加到 ClCompile 项,因为 WPP 任务在与 CL 任务相同类型的输入文件上运行,在本例中为 .c、.cpp 和 .h 文件。
注意 可以使用项目文件中的 ClCompile 项访问 tracewpp 的项元数据。 MSBuild 在目标内部使用 TraceWpp 项将其传递给任务。
以下示例演示如何编辑 .vcxproj 文件中的元数据。
<ItemGroup>
<ClCompile Include="a.c" />
<WppEnabled>false</WppEnabled>
<ClCompile Include="b.c">
<WppEnabled>true</WppEnabled>
<WppKernelMode>true</WppKernelMode>
<WppAdditionalIncludeDirectories>c:\test\</WppAdditionalIncludeDirectories>
</ClCompile>
<ClCompile Include="test1.c" />
<ClCompile Include="test2.c">
<WppEnabled>true</WppEnabled>
<WppDllMacro>true</WppDllMacro>
</ClCompile>
</ItemGroup>
命令行调用将为:
tracewpp.exe km /Ic:\test\b.c
tracewpp.exe dll test2.c
上面的示例显示,MSBuild 仅在 b.c 和 test2.c 上调用 tracewpp.exe ,因为这些输入的 WppEnabled 元数据设置为 TRUE 。 另请注意,这两个输入的元数据是不同的。 因此,这些输入的开关也会有所不同。 换句话说,可以使用自己的元数据集调用每个输入。
WPP 任务参数 | 项元数据 | 工具开关 |
---|---|---|
Sources
所需的 ITaskItem [] 参数。 指定源文件的列表。 |
@ (TraceWpp) | |
AddAlternateNameToMessageGUID
可选字符串参数。 为来自此跟踪提供程序的消息的消息指定消息 GUID 的备用友好名称。 |
% (TraceWpp.WppAddAlternateNameToMessageGUID) | -o:String |
AdditionalConfigurationFile
可选字符串参数。 指定其他配置文件。 WPP 除了默认文件之外,还使用指定的文件,defaultwpp.ini。 |
% (TraceWpp.WppAdditionalConfigurationFile) | -ini:Path |
AdditionalIncludeDirectories
可选 string[] 参数。 将目录添加到 WPP 搜索包含文件的目录列表中。 |
% (TraceWpp.WppAdditionalIncludeDirectories) | -I |
AlternateConfigurationFile
可选字符串参数。 指定备用配置文件。 WPP 使用此文件而不是 defaultwpp.ini 文件。 |
% (TraceWpp.WppAlternateConfigurationFile) | -defwpp:Path |
GenerateUsingTemplateFile
可选字符串参数。 对于 WPP 使用大括号 {}之间指定的名称处理的每个源文件,WPP 会创建另一个具有指定文件扩展名的文件。 |
% (TraceWpp.WppGenerateUsingTemplateFile) | -gen{File.tpl}*.ext |
MinimalRebuildFromTracking
可选的布尔参数。 如果值为 TRUE,则 WPP 执行跟踪的增量生成。 否则,WPP 执行重新生成。 |
% (TraceWpp.WppMinimalRebuildFromTracking) | |
NumericBaseForFormatStrings
可选 int 参数。 为格式字符串的编号建立数字基数。 |
% (TraceWpp.WppNumericBaseForFormatStrings) | -argbase:Number |
AddControlGUID
可选字符串参数。 定义具有指定控件 GUID 的WPP_CONTROL_GUIDS宏,并WPP_DEFINE_BIT名为“Error”、“异常”和“Noise”的条目。 |
% (TraceWpp.WppAddControlGUID) | -ctl:GUID |
AdditionalOptions
可选字符串参数。 命令行选项列表。 |
% (TraceWpp.WppAdditionalOptions) | |
ConfigurationDirectories
可选 string[] 参数。 指定配置和模板文件的位置。 |
% (TraceWpp.WppConfigurationDirectories) | -cfgdir:[Path] |
DllMacro
可选的布尔参数。 定义WPP_DLL宏。 |
% (TraceWpp.WppDllMacro) | -Dll |
FileExtensions
可选 string[] 参数。 指定 WPP 识别为源文件的文件类型。 WPP 忽略具有不同文件扩展名的文件。 |
% (TraceWpp.WppFileExtensions) | -ext:.ext1 [.ext2] |
IgnoreExclamationmarks
可选的布尔参数。 指示 WPP 忽略复杂格式设置中使用的感叹号(也称为“shrieks”),如 %!timestamp!%。 |
% (TraceWpp.WppIgnoreExclamationmarks) | -noshrieks |
KernelMode
可选的布尔参数。 定义跟踪内核模式组件的WPP_KERNEL_MODE宏。 默认情况下,仅跟踪用户模式组件。 |
% (TraceWpp.WppKernelMode) | -公里 |
OutputDirectory
可选字符串参数。 指定 WPP 创建的输出文件的目录。 |
% (TraceWpp.WppOutputDirectory) | -odir:Path |
PreprocessorDefinitions
可选 string[] 参数。 定义源文件的预处理符号。 |
% (TraceWpp.WppPreprocessorDefinitions) | /D |
PreserveExtensions
可选 string[] 参数。 创建 TMH 文件时保留指定的文件扩展名。 |
% (TraceWpp.WppPreserveExtensions) | -preserveext:ext1[,ext2] |
ScanConfigurationData
可选字符串参数。 在不是配置文件的文件中以及 defaultwpp.ini 中搜索配置数据,例如自定义数据类型。 |
% (TraceWpp.WppScanConfigurationData) | -scan:File |
SearchString
可选字符串参数。 指示 WPP 在源文件中搜索指定字符串以启动跟踪。 |
% (TraceWpp.WppSearchString) | -lookfor:String |
ToolPath
可选字符串参数。 允许指定工具所在的文件夹的完整路径。 |
$ (WPPToolPath) | |
TraceFunction
可选 string[] 参数。 指定随后可用于生成跟踪消息的函数。 |
% (TraceWpp.WppTraceFunction) | -func:FunctionDescription |
TrackerLogDirectory
可选字符串参数。 跟踪器用于写入 tlog 的日志目录。 |
% (TraceWpp.WppTrackerLogDirectory) | |
TrackFileAccess
可选的布尔参数。 如果为 true,则跟踪此任务的文件访问模式。 |
$ (TrackFileAccess) |