我发现有些程序可以挂钩TerminateProcess API,这样你就无法实际使用任何调用API的代码。还有什么方法可以使用C#杀死这样的进程?类似于高级过程操纵器的东西。
答案 0 :(得分:2)
你可以绕过钩子。你知道,获取dll的加载地址,在exports表中查找函数,然后直接调用它。
或者,您可以编写一个设备驱动程序,从操作系统进程列表中删除该进程。这样可以防止它被安排。
更严重的是,请考虑.NET不适合防病毒软件开发的事实。您必须经常使用较低级别的软件,以至于我认为.NET不会有益。它可以作为AV核心的前端,但这就是我用它的全部。