如何从Windows服务启动系统帐户下的单独进程?

时间:2011-07-26 10:36:35

标签: c++ windows windows-services user-accounts

我在SO上已经阅读了很多类似的问题,但还没有找到答案

我需要在登录用户的会话中从Windows服务运行一个单独的进程,但是在系统帐户下,因此用户无法终止进程

我需要此过程与桌面进行交互以进行监督。

主要目标是阻止用户终止该过程。

2 个答案:

答案 0 :(得分:2)

如果您运行交互式应用程序(具有GUI或不具有GUI),则从当前登录的用户帐户 - 最终用户(具有管理员权限)可以终止该过程。您需要将其保留为SYSTEM服务,或使用SetKernelObjectSecurity从流程中删除所有DACL / ACL信息。

答案 1 :(得分:-1)

实际上有更简单的方法来实现相同的目的:防止用户没有特殊权限(如管理员权限)终止进程

经过长时间的挖掘,我在这里找到了可接受的答案:Prevent user process from being killed with "End Process" from Process Explorer

如果您以普通用户身份登录,则

正常工作,您无法从Process Explorer中终止该进程。管理员仍然可以杀死它,因为有足够的权限。这正是我所需要的