ServiceController.ExecuteCommand(Int32) Метод

Определение

Выполняет пользовательскую команду в службе.

public:
 void ExecuteCommand(int command);
public void ExecuteCommand(int command);
member this.ExecuteCommand : int -> unit
Public Sub ExecuteCommand (command As Integer)

Параметры

command
Int32

Флаг команды, определяемый приложением, указывающий, какая пользовательская команда выполняется. Значение должно быть от 128 до 256 включительно.

Исключения

Ошибка при доступе к системным API.

Служба не найдена.

Примеры

В следующем примере кода показано использование ServiceController.ExecuteCommand(Int32) метода для выполнения пользовательских команд в SimpleService примере службы.

using System;
using System.ServiceProcess;

namespace test_exec_cmnd
{
    class Program
    {
        private enum SimpleServiceCustomCommands { StopWorker = 128, RestartWorker, CheckWorker };
        static void Main(string[] args)
        {
            ServiceController myService = new ServiceController("SimpleService");
            myService.ExecuteCommand((int)SimpleServiceCustomCommands.StopWorker);
            myService.ExecuteCommand((int)SimpleServiceCustomCommands.RestartWorker);
            myService.ExecuteCommand((int)SimpleServiceCustomCommands.CheckWorker);
        }
    }
}
Imports System.ServiceProcess



Class Program
    
    Private Enum SimpleServiceCustomCommands
        StopWorker = 128
        RestartWorker
        CheckWorker '
    End Enum 'SimpleServiceCustomCommands

    Shared Sub Main(ByVal args() As String) 
        Dim myService As New ServiceController("SimpleService")
        myService.ExecuteCommand(Fix(SimpleServiceCustomCommands.StopWorker))
        myService.ExecuteCommand(Fix(SimpleServiceCustomCommands.RestartWorker))
        myService.ExecuteCommand(Fix(SimpleServiceCustomCommands.CheckWorker))
    
    End Sub
End Class

Комментарии

При вызове ExecuteCommandсостояние службы не изменяется. Если служба запущена, состояние остается Running. Если служба остановлена, состояние остается Stoppedи т. д. Чтобы обработать пользовательскую команду, служба должна переопределить OnCustomCommand метод и предоставить обработчик для команды, определенной параметром command .

Применяется к

См. также раздел