我有一个 C/C++ 应用程序,我想在其中使用基于 list 的 ETW 解决方案。我在使用打开生成的 *.etl 的工具(如 Windows 或任何其他工具上的默认工具)时遇到问题,因为我看不到我的事件的具体细节( list 中定义的模板)
我如何将 list 注册到系统并将其指定给众所周知的 ETW 消费者工具以显示该信息?
我做了 http://www.codeproject.com/Articles/570690/Application-Analysis-with-Event-Tracing-for-Window 中提到的事情
mc FirstETW.man //included generated *.rc in project
mc -um FirstETW.man //to generate C files that I've used in the ETW provider executable
rc FirstETW.rc // not sure of this .Already included the generated *.rc script from previous step in the visual studio project
还通过以下方式注册了 list :
wevtutil.exe im FirstETW.man //installs the provider
有什么想法吗?
最佳答案
问题与以下事实有关,即在 list 中指定的提供者 messageFileName 与包含 ETW 消费者(例如事件日志或其他工具)所需的资源(字符串)的实际二进制文件的位置不同.
此外,如果希望在事件查看器中看到日志,请确保您在事件查看器中启用分析或调试 channel 类型的提供程序。
关于c++ - WIndows - 基于 list 的 ETW 提供程序问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16818129/