gpt4 book ai didi

c# - 在没有 WMI 的情况下使用 C# 检测 Windows 进程启动和退出事件

转载 作者:可可西里 更新时间:2023-11-01 14:04:02 24 4
gpt4 key购买 nike

使用 WMI 的 ManagementEventWatcher/EventArrivedEventHandler 将导致创建另一个我试图避免的线程。 WMI 也知道它的延迟。
所以我的问题是:如何在没有 WMI 的情况下使用 C# 检测 Windows 进程的创建/终止?有没有办法从非托管代码做到这一点?

最佳答案

您可以使用 Event Tracing for Windows (ETW)。具体来说,您想查看 Process class 的子类在kernel event tracer .

我从未在托管代码中使用过它,但是 this blog post看起来很有用。

而且我不知道这是否会在您的进程中创建额外的线程。

总而言之,您不需要 WMI 来监视进程事​​件。您可以改用 ETW,但我不知道它是否完全符合您的要求。

关于c# - 在没有 WMI 的情况下使用 C# 检测 Windows 进程启动和退出事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22131316/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com