从任务管理器中禁用Exe

时间:2009-04-21 08:47:51

标签: c#

如何隐藏我的可执行文件,以便它在运行时不显示在任务管理器中?有很多EXE以相同的名称运行,我想避免让用户感到困惑。

更新

好的,好的。告诉我,如何禁止EXE被任务管理器中的其他人杀死?

3 个答案:

答案 0 :(得分:6)

如果你真的需要这样做,你基本上需要使用rootkit。见Hoglund&巴特勒书,“Rootkits:颠覆Windows内核”。但是,您将在每一步中与操作系统和反恶意软件供应商作斗争。

另请参阅Raymond Chen对“军备竞赛”的反复讨论,了解Windows为什么不支持这一点 - 基本上如果您被允许从任务管理器中删除,那么用户将需要另一个显示隐藏进程的实用程序,以及那么你将需要一种方法将自己从该实用程序中移除,等等无限期。

如果你真的必须这样做,那么你需要使用C或汇编程序,而不是C#。

答案 1 :(得分:3)

谷歌的术语“rootkit”。基本上,这被认为是非常邪恶的,并且通常仅用于恶意目的,因此这是不好的做法,因为现代的防病毒软件可能会将您的软件标记为恶意软件。

http://en.wikipedia.org/wiki/Rootkit

答案 2 :(得分:0)

回答您的最新问题。确保您的流程在System帐户或类似帐户下运行,并确保用户对PC没有Admin权限。然后他们将无权杀死这个过程。