TraceWPP 工作
Windows 驅動程式套件 (WDK) 提供 TraceWPP 工作,以便在您使用 MSBuild 建置驅動程式時執行 tracewpp.exe 工具。 tracewpp.exe 工具可用來實作 WPP 軟體追蹤。
WppEnabled 是 ClCompile 專案的新元數據,可追蹤來源檔案。 Wpp 工作會透過整個 ClCompile 專案集合執行,並針對 WppEnabled 元數據設定為 TRUE 的每個專案叫用 tracewpp.exe。
WppEnabled 元數據已新增至 ClCompile Item,因為 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 工作參數 | 項目中繼資料 | 工具切換 |
---|---|---|
來源
需要 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
選擇性的 Boolean 參數。 如果值為 TRUE,WPP 會執行追蹤的累加建置。 否則,WPP 會執行重建。 |
% (TraceWpp.WppMinimalRebuildFromTracking) | |
NumericBaseForFormatStrings
選擇性的 int 參數。 建立格式字串編號的數值基底。 |
% (TraceWpp.WppNumericBaseForFormatStrings) | -argbase:Number |
AddControlGUID
選擇性字串參數。 使用指定的控件 GUID 定義WPP_CONTROL_GUIDS宏,並WPP_DEFINE_BIT名為 'Error'、'Unusual' 和 'Noise' 的專案。 |
% (TraceWpp.WppAddControlGUID) | -ctl:GUID |
AdditionalOptions
選擇性字串參數。 命令列選項清單。 |
% (TraceWpp.WppAdditionalOptions) | |
ConfigurationDirectories
選擇性 string[] 參數。 指定組態和範本檔案的位置。 |
% (TraceWpp.WppConfigurationDirectories) | -cfgdir:[Path] |
DllMacro
選擇性的 Boolean 參數。 定義WPP_DLL宏。 |
% (TraceWpp.WppDllMacro) | -Dll |
FileExtensions
選擇性 string[] 參數。 指定 WPP 辨識為來源檔案的檔案類型。 WPP 會忽略擴展名不同的檔案。 |
% (TraceWpp.WppFileExtensions) | -ext:.ext1 [.ext2] |
IgnoreExclamationmarks
選擇性的 Boolean 參數。 指示 WPP 忽略驚嘆號,也稱為「shrieks」,用於複雜的格式設定,例如 %!timestamp!%。 |
% (TraceWpp.WppIgnoreExclamationmarks) | -noshrieks |
KernelMode
選擇性的 Boolean 參數。 定義追蹤核心模式元件的WPP_KERNEL_MODE宏。 根據預設,只會追蹤使用者模式元件。 |
% (TraceWpp.WppKernelMode) | -公里 |
OutputDirectory
選擇性字串參數。 指定 WPP 所建立輸出檔案的目錄。 |
% (TraceWpp.WppOutputDirectory) | -odir:Path |
PreprocessorDefinitions
選擇性 string[] 參數。 為原始程式檔定義前置處理符號。 |
% (TraceWpp.WppPreprocessorDefinitions) | /D |
PreserveExtensions
選擇性 string[] 參數。 建立T 檔案時,保留指定的擴展名。 |
% (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
選擇性的 Boolean 參數。 如果為 true,則會追蹤這項工作的檔案存取模式。 |
$ (TrackFileAccess) |