我正在使用C#代码来启动和停止窗口服务,但我收到此错误。System.ComponentModel.Win32Exception:访问被拒绝错误
System.ComponentModel.Win32Exception: Access is denied
请帮帮我。
我的代码:
public void StartService(string serviceName, int timeoutMilliseconds)
{
ServiceController service = new ServiceController(serviceName);
try
{
TimeSpan timeout = TimeSpan.FromMilliseconds(timeoutMilliseconds);
service.Start();
service.WaitForStatus(ServiceControllerStatus.Running, timeout);
lblMessage.Text = "Service Started.";
}
catch (Exception ex)
{
//lblMessage.Text = "Error in Service Starting.";
lblMessage.Text = ex.ToString();
}
}
您确定该用户帐户具有启动服务所需的权限吗?你可以发布堆栈跟踪吗? –
请参阅此处:http://stackoverflow.com/questions/6070295/starting-a-service-in-asp-net-c-with-the-right-permissions –
堆栈跟踪是System.InvalidOperationException:无法打开aspnet_state服务于电脑'。'。 ---> System.ComponentModel.Win32Exception:访问被拒绝---内部异常堆栈跟踪结束---在System.ServiceProcess.ServiceController.GetServiceHandle(Int32 desiredAccess)上System.ServiceProcess.ServiceController.Start(String [] args )在System.ServiceProcess.ServiceController.Start()_Default.StartService(String serviceName,Int32 timeoutMilliseconds) – Mahesh