Condividi tramite


ServiceController.ExecuteCommand(Int32) Metodo

Definizione

Esegue un comando personalizzato sul servizio.

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

Parametri

command
Int32

Flag di comando definito dall'applicazione che indica quale comando personalizzato eseguire. Il valore deve essere tra compreso tra 128 e 256, inclusi.

Eccezioni

Si è verificato un errore durante l'accesso a un'API di sistema.

Servizio non trovato.

Esempio

Nell'esempio ServiceController.ExecuteCommand(Int32) di codice seguente viene illustrato l'uso del metodo per eseguire comandi personalizzati nell'esempio di SimpleService servizio.

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

Commenti

Quando si chiama ExecuteCommand, lo stato del servizio non cambia. Se il servizio è stato avviato, lo stato rimane Running. Se il servizio è stato arrestato, lo stato rimane Stoppede così via. Per elaborare il comando personalizzato, il servizio deve eseguire l'override OnCustomCommand del metodo e fornire un gestore per il comando identificato dal command parametro .

Si applica a

Vedi anche