有没有办法收到有关从Windows启动的进程的事件?

时间:2017-11-06 22:43:55

标签: c++ windows winapi

TL; DR

我用C ++编写了一个程序来关闭所有" new"我的程序启动时启动的程序没有运行。目前我通过捕获所有PID然后不断检查所有已注册的应用程序来执行此操作。那些不在我名单上的人我试图关闭/杀死。这对于这样一个简单的任务来说非常占用CPU。有没有办法接收某种窗口事件,所以我不需要一个非常活跃的线程?

我发现this挂钩可能会做我需要做的事情,但它看起来似乎是出于其他目的,而不是我需要的。

简而言之:

我是否可以在流程启动之后/之前从Windows收到一个事件?

1 个答案:

答案 0 :(得分:3)

理想情况下,你会在用户模式下进行此操作并且不进行轮询,我唯一能想到的就是dp.hide

可以找到一个C ++示例WMI events。您可能还希望here了解__InstanceCreationEvent和Win32_ProcessStartTrace之间的区别。