无法findtypes或名称空间名称“ServiceController”

我想在C#中检查一个服务,我已经添加了System.ServiceProcess.dll

虽然我得到的错误:

错误2无法findtypes或命名空间名称“ServiceController”(您是否缺lessusing指令或程序集引用?)D:\ App \ Form1.cs 247 13 App

我的代码如下:

 private void button13_Click(object sender, EventArgs e) { ServiceController sc = new ServiceController("Spooler"); if (sc.Status == ServiceControllerStatus.Running) { MessageBox.Show("The service is running."); } } 

我可能需要一个“使用”的声明?

您需要添加对System.ServiceProcess.dll的引用

在这里输入图像说明

之后,您将能够在Visual Studio中看到它,作为您可以添加到项目中的using语句之一:

在这里输入图像说明

专业提示 :当您尝试使用.NET Framework中的类时,会看到如下消息:

类型或名称空间名称“…”找不到(您是否缺少using指令或程序集引用?)

查找MSDN Library中的类型,并查看“继承层次结构”部分以查找所需的名称空间和程序集。

继承层次结构

 System.Object System.MarshalByRefObject System.ComponentModel.Component System.ServiceProcess.ServiceController 

命名空间: System.ServiceProcess
程序集: System.ServiceProcess(在System.ServiceProcess.dll中

然后确保你有一个对程序集的引用和一个名字空间的using指令 (假设你不想完全限定这个名字)。

是的,在顶部。

using System.ServiceProcess;

对于我来说(Visual Studio 2012),在输入“using”时不是默认的添加,我必须添加一个引用并搜索System.ServiceProcess的程序集。 (我相信它位于旧版Studio中的.NET选项卡中)。 希望这有助于任何未来的观众!