Не удалось найти тип или имя пространства имен ServiceController



Я пытаюсь проверить службу в C#, я добавил System.ServiceProcess.dll



Хотя я получаю ошибку:



Ошибка 2 не удалось найти тип или имя пространства имен ServiceController (отсутствует директива using или ссылка на сборку?) D:AppForm1.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.");
}
}


Может быть, мне нужен оператор "using"?

753   4  

4 ответов:

Вам нужно добавить ссылку на систему.Событий.dll

Введите описание изображения здесь

После этого вы сможете увидеть его в Visual Studio, как один из операторов using, которые вы можете добавить в свой проект:

Введите описание изображения здесь

Pro Tip : Когда вы пытаетесь использовать класс из .NET Framework и получаете сообщение типа:

Тип или имя пространства имен '...' мочь не быть найденным (вы пропускаете использование директива или ссылка на сборку?)

Найдите тип в библиотекеMSDN и найдите в разделе иерархия наследования нужное пространство имен и сборку.

Иерархия Наследования

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

Пространство имен: Система.Сервисный Процесс
Сборка: Система.ServiceProcess (в системе .Событий.dll )

Затем убедитесь, что у вас есть ссылка на сборку и директива using для пространства имен (предполагая, что вы не хотите полностью определять имя).

Да, наверху.

using System.ServiceProcess;

Для меня (Visual Studio 2012) это не было добавлением по умолчанию при вводе "using" Мне пришлось добавить ссылку и поискать в сборках систему.Событий. (Я полагаю, что он находится на вкладке .NET в более старых версиях Studio). Надеюсь, это поможет любому будущему зрителю!

Comments

    Ничего не найдено.