Контроль сервисов windows

WMI представляет сервисы Windows, как экземпляры класса Win32_Service. Вы можете добавить этот класс к активам устройства или же использовать WQL-запросы для получения информации и осуществления контроля за сервисами на удаленных Windows-компьютерах. Несколько примеров представлено ниже.

Перечисление неактивных сервисов

Для того, чтобы получить имена неактивных сервисов и их статусы, можно использовать следующий WQL-запрос:

SELECT DisplayName,State FROM Win32_Service WHERE State <> 'Running'

Для того, чтобы активировать его, выполните следующее:

  • Выберите устройство в Контекстном дереве
  • Щелкните правой кнопкой мыши и выберите элемент Редактировать свойства устройства
  • Добавьте новую запись в таблицу, расположенную во вкладке WQL-запросы; введите имя, описание и текст запроса (как указано ранее) в соответствующих полях  
  • Нажмите OK

Устройство автоматически выполнит синхронизацию и запрос. Результат будет доступен в таблице WQL-запросов в Настройках устройства.

Определение сервисов, которые можно остановить

Используйте следующий запрос для получения только тех сервисов, которые можно остановить:

SELECT * FROM Win32_Service WHERE AcceptStop = True

Следуйте по аналогии с процедурой, описанной выше.

Сервисы start и stop

Для того, чтобы запустить сервис на определенном комьютере, следует выполнить следующие операции:

  • Выберите соответствующее устройство в Контекстном дереве
  • Кликните по нему правой кнопкой мыши и выберите в контекстном меню элемент Win32_Service (для Устройств хоста сети в подменю WMI)
  • Выберите там метод StartService
  • Выберите или введите путь к объекту, определяющий сервис, который необходимо запустить
  • Нажмите OK

Для того, чтобы остановить сервис, выполните эту процедуру для метода StopService.

Очередность загрузки групп сервисов

Существуют другие классы, содержащие информацию о сервисах Windows. За дополнительной информацией обратитесь к документации по WMI.

Например, экземпляры класса Win32_LoadOrderGroup представляют группы сервисов, которые определяют зависимости выполнения. Можно добавить этот класс в активы устройств или использовать WQL:

SELECT * FROM Win32_LoadOrderGroup