SERVICE_FAILURE_ACTIONSW struttura (winsvc.h)

Rappresenta l'azione che il controller del servizio deve eseguire per ogni errore di un servizio. Un servizio viene considerato non riuscito quando termina senza segnalare uno stato di SERVICE_STOPPED al controller di servizio.

Per configurare circostanze aggiuntive in cui devono essere eseguite le azioni di errore, vedere SERVICE_FAILURE_ACTIONS_FLAG.

Sintassi

typedef struct _SERVICE_FAILURE_ACTIONSW {
  DWORD     dwResetPeriod;
  LPWSTR    lpRebootMsg;
  LPWSTR    lpCommand;
  DWORD     cActions;
  SC_ACTION *lpsaActions;
} SERVICE_FAILURE_ACTIONSW, *LPSERVICE_FAILURE_ACTIONSW;

Members

dwResetPeriod

Tempo dopo il quale reimpostare il conteggio degli errori su zero se non sono presenti errori, in secondi. Specificare INFINITE per indicare che questo valore non deve mai essere reimpostato.

lpRebootMsg

Messaggio da trasmettere agli utenti del server prima di riavviare in risposta all'azione del controller di servizio SC_ACTION_REBOOT .

Se questo valore è NULL, il messaggio di riavvio viene invariato. Se il valore è una stringa vuota (""), il messaggio di riavvio viene eliminato e non viene trasmesso alcun messaggio.

Questo membro può specificare una stringa localizzata usando il formato seguente:

@[path]dllname,-strID

La stringa con identificatore strID viene caricata da dllname; il percorso è facoltativo. Per altre informazioni, vedere RegLoadMUIString.

Windows Server 2003 e Windows XP: Le stringhe localizzate non sono supportate fino a Windows Vista.

lpCommand

Riga di comando del processo per la funzione CreateProcess da eseguire in risposta all'azione del controller di servizio SC_ACTION_RUN_COMMAND . Questo processo viene eseguito nello stesso account del servizio.

Se questo valore è NULL, il comando viene invariato. Se il valore è una stringa vuota (""), il comando viene eliminato e non viene eseguito alcun programma quando il servizio ha esito negativo.

cActions

Numero di elementi nella matrice lpsaActions .

Se questo valore è 0, ma lpsaActions non è NULL, il periodo di reimpostazione e la matrice di azioni di errore vengono eliminati.

lpsaActions

Puntatore a una matrice di strutture SC_ACTION .

Se questo valore è NULL, i membri cActions e dwResetPeriod vengono ignorati.

Commenti

Il gestore del controllo del servizio conta il numero di volte in cui ogni servizio non è riuscito dopo l'avvio del sistema. Il conteggio viene reimpostato su 0 se il servizio non è riuscito per dwResetPeriod secondi. Quando il servizio non riesce per l'ora N, il controller di servizio esegue l'azione specificata nell'elemento [N-1] della matrice lpsaActions . Se N è maggiore di cActions, il controller di servizio ripete l'ultima azione nella matrice.

Nota

L'intestazione winsvc.h definisce SERVICE_FAILURE_ACTIONS come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Intestazione winsvc.h (include Windows.h)

Vedi anche

ChangeServiceConfig2

CreateProcess

QueryServiceConfig2

SC_ACTION

SERVICE_FAILURE_ACTIONS_FLAG