【发布时间】:2015-06-18 11:17:23
【问题描述】:
我正在 Windows 中开发一个应用程序,它应该在进程终止之前运行代码。我可以编写一个内核模块来实现这一点。但是我应该挂钩哪些功能?
为了获得有关进程终止的通知,我正在这样做。
HANDLE handle = OpenProcess(PROCESS_ALL_ACCESS, FALSE, 1234);
DWORD wait = WaitForSingleObject(handle, INFINITE);
// Some block of code here that does the business logic.
handleProcessTermination();
我的问题是目标进程在我的函数 handleProcessTermination() 完成之前退出。我想要一种方法来停止进程的退出并运行我的逻辑。
【问题讨论】:
-
到目前为止,我可以通过等待进程句柄来获得通知,但我想停止目标进程的执行(停止进程的退出),直到我运行我的代码然后让进程执行.
-
你能添加你的代码吗,你有吗?并描述你想要达到的目标?流程和代码不是很清楚。
-
如果你的意思是你想让一个被强制终止的进程(通过 TerminateProcess)在它被终止之前运行代码,那是不可能的。
标签: windows winapi process win32-process windows-kernel