除了为 printf 定义的标准格式字符串外,WPP 还包括可在跟踪消息中使用的预定义格式规范字符串。
可以使用 %!FLAGS!, %!FUNC!和 %!水平!跟踪消息前缀中的字符串,以及任何跟踪函数或宏中的字符串,例如 DoTraceMessage。
可以在任何跟踪函数中使用其他扩展字符串。
tracewpp 的默认配置选项
WPP 使用“defaultwpp.ini”进行默认配置设置。 此默认 INI 文件作为 Windows SDK 的一部分包含在 WppConfig Rev1 目录中。 有关 WPP 默认行为的最新信息,以及有关自定义的其他信息,请参阅此 INI 文件。
软件跟踪
| 格式字符串 | 说明 | 
|---|---|
| %!文件! | 显示从中生成跟踪消息的源文件的名称。 此变量还可用于 跟踪消息前缀。 | 
| %!标志! | 显示启用跟踪消息的跟踪 标志 的值。 此变量还可用于 跟踪消息前缀。 | 
| %!FUNC! | 显示生成跟踪消息的函数。 此变量还可用于 跟踪消息前缀。 | 
| %!水平! | 显示启用跟踪消息的跟踪 级别 的名称。 此变量还可用于 跟踪消息前缀。 | 
| %!线! | 显示生成跟踪前缀的代码中行的行号。 此变量还可用于 跟踪消息前缀。 | 
常规使用
| 格式字符串 | 说明 | 
|---|---|
| %!bool! | 显示 TRUE 或 FALSE | 
| %!irql! | 显示当前 IRQL 的名称。 | 
| %!sid! | 表示指向 pSID) (安全标识符的指针。 显示 SID。 | 
| GUID | |
| %!Guid! | 表示指向 GUID (pGUID) 的指针。 显示指向的 GUID。 | 
| %!Clsid! | 类 ID。 表示指向类 ID GUID 的指针。 显示与 GUID 关联的字符串。 WPP 在设置跟踪消息格式时在注册表中查找字符串。 | 
| %!LIBID! | 类型库。 表示 COM 类型库的 GUID。 显示与 GUID 关联的字符串。 WPP 在设置跟踪消息格式时在注册表中查找字符串。 | 
| %!Iid! | 接口 ID。 表示指向接口 ID GUID 的指针。 显示与 GUID 关联的字符串。 WPP 在设置跟踪消息格式时在注册表中查找字符串。 | 
| 时间 | |
| %!delta! | 显示两个时间值之间的差异(以毫秒为单位)。 它是以 day~h:m:s 格式显示的 LONGLONG 值。 | 
| %!WAITTIME! | 显示等待完成某些内容所花费的时间(以毫秒为单位)。 它是以 day~h:m:s 格式显示的 LONGLONG 值。 设计为与 %!due! 一起使用。 | 
| %!due! | 显示预期完成某些内容的时间(以毫秒为单位)。 它是以 day~h:m:s 格式显示的 LONGLONG 值。 设计用于 %!WAITTIME!。 | 
| %!时间 戳! %!datetime! %!时间! | 显示特定时刻的系统时间值。 这些是 LONGLONG (SINT64) 以 SYSTEMTIME 格式显示的值。 可以使用这些变量来表示程序中的不同时间值并区分它们。 | 
返回代码
| 格式字符串 | 说明 | 
|---|---|
| %!地位! | 表示状态值,并显示与状态代码关联的字符串。 | 
| %!酒家! | 表示 Windows 错误代码,并显示与错误关联的字符串。 | 
| %!HRESULT! | 表示错误或警告,以 HRESULT 格式显示代码。 | 
网络
| 格式字符串 | 说明 | 
|---|---|
| %!IPADDR! | 表示指向 IP 地址的指针。 显示 IP 地址。 | 
| %!港口! | 显示端口号。 |