我已添加并安装了一项服务,并且我试图将服务的状态转换为标签,例如"运行&#34 ;. 我添加了以下代码
public ServiceController sc = new ServiceController();
lblServices.Text = sc.Status.ToString();
但是我收到以下运行时错误:
"未处理的类型' System.ArgumentException'发生在System.ServiceProcess.dll
中附加信息:服务名称包含无效字符,为空或太长(最大长度= 80)。"
答案 0 :(得分:5)
您需要在ServiceController
的构造函数中指定服务的名称,如下所示:
ServiceController sc = new ServiceController("MyService");
lblServices.Text = sc.Status.ToString();
或通过ServiceName
这样的属性:
ServiceController sc = new ServiceController();
sc.ServiceName = "MyService";
lblServices.Text = sc.Status.ToString();