wordpress   发布时间:2022-04-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了windows – 使用WPP跟踪多个ETW提供程序大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我正在尝试通过WPP实现使用“ Windows事件跟踪”.根据 GetTing Started with Software Tracing in Windows Drivers中的文档,可以从单个驱动程序向多个提供程序发出跟踪,但我没有看到这样做的示例: A driver can specify more than one control GUID. Each control GUID ident
我正在尝试通过WPP实现使用“ Windows事件跟踪”.根据 Getting Started with Software Tracing in Windows Drivers中的文档,可以从单个驱动程序向多个提供程序发出跟踪,但我没有看到这样做的示例:

我试图创建两个头文件,每个文件都使用不同的guid WPP_CONTROL_GUIDs.然后我包含来自c / cpp文件的不同头文件,我希望将这些文件发布到不同的提供者.但似乎主文件中的定义覆盖了这个分隔,并且所有跟踪都到达了它使用的提供程序……

有什么建议吗?有样品吗?谢谢!!

解决方法

我现在避免像瘟疫那样的WPP跟踪,但跟踪模板提供了如何执行此操作的示例.您应该在某个TMH文件中的某处看到此注释:

// template C:\WinDDK\7600.16385.1\bin\wppconfig\rev1\control.tpl
//
//     Defines a set of macro that expand control model specified
//     with WPP_CONTROL_GUIDS (example shown below)
//     into an enum of trace levels and required structures that
//     contain the mask of levels,logger handle and some information
//     required for registration.
//

///////////////////////////////////////////////////////////////////////////////////
//
// #define WPP_CONTROL_GUIDS \
//     WPP_DEFINE_CONTROL_GUID(Regular,(81b20fea,73a8,4b62,95bc,354477c97a6f),\
//       WPP_DEFINE_BIT(Error)      \
//       WPP_DEFINE_BIT(Unusual)    \
//       WPP_DEFINE_BIT(NoisE)      \
//    )        \
//    WPP_DEFINE_CONTROL_GUID(HiFreq,(91b20fea,\
//       WPP_DEFINE_BIT(Entry)      \
//       WPP_DEFINE_BIT(Exit)       \
//       WPP_DEFINE_BIT(ApiCalls)   \
//       WPP_DEFINE_BIT(RandomJunk) \
//       WPP_DEFINE_BIT(LovePoem)   \
//    )

因此,您应该在同一个WPP_CONTROL_GUIDS宏中定义两个GUID.

大佬总结

以上是大佬教程为你收集整理的windows – 使用WPP跟踪多个ETW提供程序全部内容,希望文章能够帮你解决windows – 使用WPP跟踪多个ETW提供程序所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。