4

我注意到一些应用程序(如 steam)能够以普通用户身份启动/停止服务,而无需调用 uac 控件。有谁知道怎么做?

操作系统:Vista/Win 7 Visual Studio 2005 C++

.

编辑:昨晚我在玩蒸汽服务,试图弄清楚它有什么不同。如果我将我的服务 exe 放在 steam 所在的位置,它可以在没有 uac(使用 sc.exe)的情况下正常启动,但如果我使用的是我的 steam exe,它就不起作用。在注册表中查看服务信息时,我发现 Steam 具有额外的权限部分。这是什么意思,你如何设置它?

.

编辑2:您需要更改服务的用户访问权限:http: //msdn.microsoft.com/en-us/library/ms684215 (VS.85).aspx

4

1 回答 1

6

启动(或停止)服务的能力由服务上的 ACL 控制。如果您授予交互式用户启动您的服务的权限,他们就可以启动您的服务。

这完全取决于您在安装服务时如何设置服务。

显然,您必须使用 Windows 服务 API (OpenSCManager/OpenService/StartService) 来启动服务。

于 2009-05-12T01:22:17.743 回答