用 C# 启动服务
Posted
技术标签:
【中文标题】用 C# 启动服务【英文标题】:Start Service with C # 【发布时间】:2011-10-21 14:44:48 【问题描述】:我正在尝试使,但出现以下错误:
ServiceController service = new ServiceController(sServiceName);
service.MachineName = localComputerName;
service.Start();
service.WaitForStatus(ServiceControllerStatus.Running);
System.InvalidOperationException:无法在计算机上打开服务 System.ComponentModel.Win32Exception:访问被拒绝 System.ServiceProcess.ServiceController.GetServiceHandle(Int32 requiredAccess) 在 System.ServiceProcess.ServiceController.Stop()
【问题讨论】:
【参考方案1】:寻找您的权限。请问您需要从管理员帐户运行您的应用程序(或 Visual Studio)。
【讨论】:
【参考方案2】:您的Access is denied
错误向我表明,您的进程/应用程序正在运行的身份没有启动和停止服务的权限。
【讨论】:
那怎么设置权限呢?【参考方案3】:您是否已将异常文本变红?您根本没有启动服务器的权限。阅读:http://msdn.microsoft.com/en-us/library/h846e9b3.aspx(特别是http://msdn.microsoft.com/en-us/library/system.serviceprocess.servicecontrollerpermission.aspx)或以管理员身份启动应用程序
【讨论】:
【参考方案4】:在启动服务时,您可能需要查看 this question 以获得有关权限的一些帮助。
【讨论】:
以上是关于用 C# 启动服务的主要内容,如果未能解决你的问题,请参考以下文章