列出 ETW 提供程序的事件类

3
我想在C中实现一个ETW消费者,用于来自Microsoft-Windows-TCPIP提供程序的事件。但是,我无法找到此提供程序生成的事件类型。
我已经完成了一些类似的工作,以从Microsoft-Windows-Kernel-*(请参见NT Kernel Logger)中消耗事件,但是从该提供程序发送的事件在MSDN上有相当好的文档(请参见Enable Flags文档)。
所以我想问的真正问题是:如何将ETW提供程序链接到其生成的事件类型(我们在这里谈论C结构),并可能反过来(如果可能的话)?
谢谢!

编辑0:我不介意使用其他技术来查找类的详细信息。例如,要获取Registry类(用于NT内核记录器)的详细信息,可以使用powershell运行以下命令(注意,您需要正确的命名空间,否则您将无法获得正确的类型):

$list = gwmi -namespace root\wmi -Class Registry* -list
foreach($element in $list) {
   ([wmiclass]$element).gettext("mof")
}
1个回答

0

你尝试过查看TraceEvent吗?这不是C语言,而是托管代码。但它是监听ETW事件的好方法。


很遗憾,我需要一个C语言的解决方案。 - ALOToverflow

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接