碰到一个比较郁闷的问题,我有一个进程,运行时动态分配了一些子进程(这些进程没有源码,不可修改),在我的主进程被任务管理器被杀死时,要保证这些子进程同时被杀掉。起初我通过信号机制来实现,后来发现通过信号量无法捕获到任务管理器中结束进程的信号量,后来知道这里是通过TerminateProcess实现的,所以现在想到的方法是hook TerminateProcess,在系统调用TerminateProcess之前,通过进程之间的通信,与我在主进程中创建的一个线程进行交互,线程收到消息后,杀死子进程,然后告诉hook函数,已经ok了,此时hook函数调用系统的TerminateProcess函数,关闭主进程。
不知道大家有没有什么好的方法,我觉得这样很麻烦,但是又想不出别的好方法来。
不知道大家有没有什么好的方法,我觉得这样很麻烦,但是又想不出别的好方法来。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货