我有一个C#安全/监控应用程序,无论如何都需要运行。但是,我可以不删除权限或限制对部分操作系统(Windows)的访问。
我想过运行一个保护服务,它会在应用程序运行时持续监视,并在应用程序以某种方式被杀死时启动它,同时应用程序监视保护服务并在服务被终止时启动服务。据我所知,你不能同时同时杀死多个进程。
最好保证应用程序始终在运行吗?
答案 0 :(得分:9)
Windows团队一直都会收到这样的请求:
“我想创造一个永远不会被杀死的过程。”
“嗯我想要制作一个可以杀死任何进程的工具”。
这两个人中的一个会感到失望。
“我想创建一个始终位于所有其他窗口之上的窗口,无论如何”
“我还想要创建一个始终位于所有其他窗口之上的窗口,无论如何”
这两个人中的一个会感到失望。
“无论上市计划如何巧妙地找到我,我都希望制作一个不会出现在任何流程列表中的流程”
“我想制作一个列出所有流程的程序,无论流程试图隐藏多么聪明”。
这两个人中的一个会感到失望。
等等。
我想你会成为失望的人之一。
答案 1 :(得分:2)
无法保证 - 如果用户拥有足够的权限,它可以终止您运行的程序或任何其他将重启您的应用程序的监控代码。
想象一下,如果这是真的 - 地球上的每一件间谍软件都会使用它。
答案 2 :(得分:1)
我会将您的程序编写为Windows服务 - 将其配置为在启动时自动运行,并在意外终止时自动重启。你不能做得更好,因为必须允许用户控制电脑。