我写了一个应该启动/停止其他服务的服务。 这是我使用的代码:服务需要哪个用户权限才能启动/停止其他服务?
ServiceController sc = new ServiceController("servicename");
if(sc.Status != ServiceControllerStatus.Running)
{
sc.Start();
}
这是异常的调用堆栈。 (很抱歉,但该消息被定位于德国,但是这并不影响我们理解我的问题)
System.InvalidOperationException: Der Dienst SCardSvr kann nicht auf dem
电脑。 geöffnetwerden。 ---> System.ComponentModel.Win32Exception: Zugriff verweigert
---恩德DER internenAusnahmestapelüberwachung---
贝System.ServiceProcess.ServiceController.GetServiceHandle(的Int32 desiredAccess)
贝System.ServiceProcess.ServiceController。启动(字符串[] 参数)
贝System.ServiceProcess.ServiceController.Start()
目前我在 '网络服务' 运行的服务。我猜这个帐户不足以满足必要的用户权限。
我将创建一个新用户,该用户需要启动/停止任意服务所需的最小权限。
此新用户帐户需要什么权限?
谁投票关闭了这个?小心评论?我认为这个问题在Stackoverflow上比在Serverfault上更合适,因为这个问题是从程序员的角度看的,而不是从管理员的角度看的。 – citronas 2010-10-01 13:21:41
投票以超级用户身份关闭。这不是一个编程问题。您的目标是创建一个拥有启动/停止服务权限的新用户。无论您是以编程方式创建此用户,确定用户需要的设置是Windows问题,而不是c#问题。 – Brian 2010-10-01 13:48:24