Motivo della modifica dello stato del servizio in SERVICE_CONTROL_STOP. Se il codice di controllo corrente non è SERVICE_CONTROL_STOP, questo membro viene ignorato.
Questo membro deve essere impostato su una combinazione di un codice generale, un codice motivo principale e un codice motivo secondario.
Di seguito sono riportati i codici motivo generali.
Valore
Significato
SERVICE_STOP_REASON_FLAG_CUSTOM
0x20000000
Il codice motivo è definito dall'utente. Se questo flag non è presente, il codice motivo viene definito dal sistema. Se questo flag viene specificato con un codice motivo di sistema, la chiamata di funzione ha esito negativo.
Gli utenti possono creare codici motivo principali personalizzati nell'intervallo SERVICE_STOP_REASON_MAJOR_MIN_CUSTOM (0x00400000) tramite SERVICE_STOP_REASON_MAJOR_MAX_CUSTOM (0x00ff0000) e codici motivo secondari nell'intervallo SERVICE_STOP_REASON_MINOR_MIN_CUSTOM (0x00000100) tramite SERVICE_STOP_REASON_MINOR_MAX_CUSTOM (0x0000FFFF).
SERVICE_STOP_REASON_FLAG_PLANNED
0x40000000
L'arresto del servizio è stato pianificato.
SERVICE_STOP_REASON_FLAG_UNPLANNED
0x10000000
L'arresto del servizio non è stato pianificato.
Di seguito sono riportati i codici motivo principali.
Valore
Significato
SERVICE_STOP_REASON_MAJOR_APPLICATION
0x00050000
Problema dell'applicazione.
SERVICE_STOP_REASON_MAJOR_HARDWARE
0x00020000
Problema hardware.
SERVICE_STOP_REASON_MAJOR_NONE
0x00060000
Nessun motivo importante.
SERVICE_STOP_REASON_MAJOR_OPERATINGSYSTEM
0x00030000
Problema del sistema operativo.
SERVICE_STOP_REASON_MAJOR_OTHER
0x00010000
Altro problema.
SERVICE_STOP_REASON_MAJOR_SOFTWARE
0x00040000
Problema software.
Di seguito sono riportati i codici motivo secondari.
Valore
Significato
SERVICE_STOP_REASON_MINOR_DISK
0x00000008
Disco.
SERVICE_STOP_REASON_MINOR_ENVIRONMENT
0x0000000a
Ambiente.
SERVICE_STOP_REASON_MINOR_HARDWARE_DRIVER
0x0000000b
Autista.
SERVICE_STOP_REASON_MINOR_HUNG
0x00000006
Insensibile.
SERVICE_STOP_REASON_MINOR_INSTALLATION
0x00000003
Installazione.
SERVICE_STOP_REASON_MINOR_MAINTENANCE
0x00000002
Manutenzione.
SERVICE_STOP_REASON_MINOR_MMC
0x00000016
Problema di MMC.
SERVICE_STOP_REASON_MINOR_NETWORK_CONNECTIVITY
0x00000011
Connettività di rete.
SERVICE_STOP_REASON_MINOR_NETWORKCARD
0x00000009
Scheda di rete.
SERVICE_STOP_REASON_MINOR_NONE
0x00060000
Nessun motivo secondario.
SERVICE_STOP_REASON_MINOR_OTHER
0x00000001
Altro problema.
SERVICE_STOP_REASON_MINOR_OTHERDRIVER
0x0000000c
Altro evento driver.
SERVICE_STOP_REASON_MINOR_RECONFIG
0x00000005
Riconfigurare.
SERVICE_STOP_REASON_MINOR_SECURITY
0x00000010
Problema di sicurezza.
SERVICE_STOP_REASON_MINOR_SECURITYFIX
0x0000000f
Aggiornamento della sicurezza.
SERVICE_STOP_REASON_MINOR_SECURITYFIX_UNINSTALL
0x00000015
Disinstallazione dell'aggiornamento della sicurezza.
Stringa facoltativa che fornisce informazioni aggiuntive sull'arresto del servizio. Questa stringa viene archiviata nel registro eventi insieme al codice motivo di arresto. Questo membro deve essere NULL o una stringa valida con meno di 128 caratteri, incluso il carattere Null di terminazione.
ServiceStatus
Puntatore a una struttura SERVICE_STATUS_PROCESS che riceve le informazioni sullo stato del servizio più recenti. Le informazioni restituite riflettono lo stato più recente segnalato dal servizio al gestore di controllo del servizio.
La gestione controllo del servizio compila la struttura solo quando ControlServiceEx restituisce uno dei codici di errore seguenti: NO_ERROR, ERROR_INVALID_SERVICE_CONTROL, ERROR_SERVICE_CANNOT_ACCEPT_CTRL o ERROR_SERVICE_NOT_ACTIVE. In caso contrario, la struttura non viene compilata.
Osservazioni
Nota
L'intestazione winsvc.h definisce SERVICE_CONTROL_STATUS_REASON_PARAMS come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.