是否有办法检测我们的进程何时从任务管理器终止? 并且最好知道哪个进程将终止我的进程?
谢谢
是否有办法检测我们的进程何时从任务管理器终止?
通常不会。如果任务管理器知道您的进程有 UI,那么首先向您的 UI 发送
WM_CLOSE
或 WM_QUIT
消息可能会更好。但是,如果你的 UI 没有对此做出响应,或者如果用户告诉 TM 终止你的进程,那么 TM 就会诉诸暴力,并且无法检测/对此做出反应。您的进程立即消失。
最好知道哪个进程将终止我的进程?
(据我所知)做到这一点的唯一方法是在每个正在运行的进程中手动挂接
TerminateProcess()
API,并在允许 API 继续其工作之前将有关调用者的信息传递回您的进程。