刚开始使用WMI,我试图了解Win32_ProcessStartTrace和__InstanceCreationEvent之间的区别。当新过程开始时,它们都可用,但是哪个是第一个?
我已经测试了Microsoft提供的几个示例,除了一个提供一些有用的信息而另一个没有提供这些信息之外,我看不到任何主要区别,例如性能问题。 (或者是吗?)
从Win32_ProcessStartTrace和__InstanceCreationEvent的文档中,我们可以看到很大的不同,因为Win32_提供了更多详细信息,例如ProcessID,而__Instance没有提供。
如果要有效(异步)监视流程创建,则应使用这2种方法中的哪一种?
必须获取有关流程的信息,至少是ProcessID。
非常感谢您提供一个很好的解释,我相信其他人也有兴趣。
最佳答案
_InstanceCreationEvent
具有一个TargetInstance
字段,对于新进程,该字段是一个Win32_Process
对象,该对象具有Win32_ProcessStartTrace
提供的大部分相同(或更多)字段。