阻止用户停止进程

时间:2016-12-05 16:39:41

标签: c# .net wpf windows process

长话短说,我需要创建一个监控计算机音量的应用程序。无论如何,计算机的用户都无法停止应用程序。

我需要让我的应用程序在计算机启动时启动,因此用户无法在没有运行应用程序的情况下重新启动它以进入其会话。截至目前,我不知道该怎么做,但通过一些研究,这应该不是问题。

我最担心的是他是否只是在任务管理器中停止了这个过程。我想我无法以编程方式避免这种情况?有没有办法只修改会话权限,以便它不能停止任务管理器中的进程?还是我没想到的任何其他解决方案?

或者我无法做到这一点,我只需要相信我的用户不要在任务管理器中停止该程序?

提前感谢您的帮助。 :)

PS:这将在学生俱乐部的计算机上运行,​​该俱乐部为俱乐部运行音乐并且任何人都可以访问。人们在上面的地板上睡觉的房间,所以我们不希望人们把音量调得太大。而已。没有恶意软件或任何东西。

2 个答案:

答案 0 :(得分:1)

一般来说,唯一像这样的程序是恶意程序(例如rootkits)。如果你考虑一下,你真的不希望程序能够像那样行事。

正如其他人所说,你最接近的是一个Windows服务,它自动从Windows启动。普通用户不会知道停止它,但仍然可以为高级用户手动停止它。

您可以尝试的一种解决方法是定期让它调用Web服务来验证它是否正在运行。这样你就可以知道谁可能已经卸载或停止了服务。 (问题当然是他们可能没有打开电脑或者其他东西;你可以单独调用“开始”和“静止”)。

或者,如果这只安装在完全由您直接控制的计算机上,正如其他人所指出的那样,您可以配置一些内容,以便您需要管理访问权来停止该过程。评论中提到了这个选项。

答案 1 :(得分:0)

我没有指责你是恶意软件 - 只是想说明如果你能轻松制作一个用户可以“永远不会停止”的程序会有多糟糕。

所以没有你不能制作一个精通计算机的人永远不会停止的程序。

但是从我收集的内容......

听起来你想把它变成一项服务。 https://msdn.microsoft.com/en-us/library/d56de412(v=vs.110).aspx

另一个(我更容易思考)选项就是创建一个从任务计划程序http://www.c-sharpcorner.com/uploadfile/manas1/console-application-using-windows-scheduler/启动的控制台应用程序。