Метод StopService класса Win32_Service (Sdoias.h) для службы терминалов
Метод класса StopServiceWMI помещает службу, представленную объектом Win32_TerminalService, в остановленном состоянии.
В этом разделе используется синтаксис формата управляемых объектов (MOF). Дополнительные сведения об использовании этого метода см. в разделе "Вызов метода".
Синтаксис
uint32 StopService();
Параметры
Этот метод не имеет параметров.
Возвращаемое значение
Возвращает одно из значений, перечисленных в следующем списке, или любое другое значение, указывающее на ошибку. Дополнительные коды ошибок см. в разделе "Константы ошибок WMI" или WbemErrorEnum. Общие значения HRESULT см. в разделе "Коды системных ошибок".
-
0
-
Запрос принят.
-
1
-
Запрос не поддерживается.
-
2
-
У пользователя не было необходимого доступа.
-
3
-
Службу нельзя остановить, так как от нее зависят другие работающие службы.
-
4
-
Запрошенный управляющий код недопустим или неприемлем для данной службы.
-
5
-
Запрошенный код элемента управления не может быть отправлен в службу, так как состояние службы (Win32_BaseService.Свойство State ) равно 0, 1 или 2.
-
6
-
Служба не запущена.
-
7
-
Служба не ответила на запрос запуска за отведенное время.
-
8
-
Неизвестный сбой при запуске службы.
-
9
-
Путь к исполняемому файлу службы не найден.
-
10
-
Служба уже запущена.
-
11
-
База данных для добавления новой службы заблокирована.
-
12
-
Зависимость этой службы зависит от того, была удалена из системы.
-
13
-
Этой службе не удалось найти службу, которая необходима зависимой службе.
-
14
-
Эта служба была отключена в системе.
-
15
-
Эта служба не поддерживает проверку подлинности, необходимую для работы в системе.
-
16
-
Эта служба удаляется из системы.
-
17
-
Служба не имеет потока выполнения.
-
18
-
Служба имеет циклические зависимости при запуске.
-
19
-
Служба выполняется под тем же именем.
-
20
-
Имя службы содержит недопустимые символы.
-
21
-
Недопустимые параметры переданы службе.
-
22
-
Учетная запись, в которой выполняется эта служба, является недопустимой или не имеет разрешений для запуска службы.
-
23
-
Служба существует в базе данных доступных в системе служб.
-
24
-
Служба в данный момент приостановлена в системе.
Замечания
После определения того, какие службы можно остановить или приостановить, можно использовать методы StopService и PauseService для остановки и приостановки служб. Решение остановить службу, а не приостановить ее или наоборот, зависит от нескольких факторов, включая следующие:
- Может ли служба приостановлена? В противном случае единственным вариантом является остановка службы.
- Нужно ли продолжать обрабатывать запросы клиентов для тех, кто уже подключен к службе? Если это так, приостановка службы обычно позволяет обрабатывать существующие клиенты при запрете доступа к новым клиентам. Напротив, при остановке службы все клиенты немедленно отключаются.
- Необходимо ли перенастроить службу и немедленно принять изменения? Хотя свойства службы можно изменить во время приостановки службы, большинство из них не вступают в силу, пока служба не будет остановлена и перезапущена.
Код скриптов, необходимый для остановки службы, почти идентичен коду, необходимому для приостановки службы.
При попытке остановить службу, в которой выполняются зависимые службы, метод StopService завершается ошибкой с возвращаемым значением 3. Сначала необходимо остановить зависимые службы.
При остановке службы немедленно проверка Win32_TerminalService.Свойство состояния, так как значение может по-прежнему отображать службу как запущенную.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows Vista |
Минимальная версия сервера |
Windows Server 2008 |
Пространство имен |
Root\CIMv2\TerminalServices |
Заголовок |
|
MOF |
|
DLL-библиотеки |
|