Condividi tramite


struttura SERVICE_FAILURE_ACTIONSA (winsvc.h)

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

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

Sintassi

typedef struct _SERVICE_FAILURE_ACTIONSA {
  DWORD     dwResetPeriod;
  LPSTR     lpRebootMsg;
  LPSTR     lpCommand;
  DWORD     cActions;
  SC_ACTION *lpsaActions;
} SERVICE_FAILURE_ACTIONSA, *LPSERVICE_FAILURE_ACTIONSA;

Members

dwResetPeriod

Tempo dopo il quale reimpostare il numero di 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 del riavvio in risposta all'azione del controller del servizio SC_ACTION_REBOOT.

Se questo valore è NULL, il messaggio di riavvio rimane 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 del servizio SC_ACTION_RUN_COMMAND. Questo processo viene eseguito con lo stesso account del servizio.

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

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 di controllo del servizio conta il numero di volte in cui ogni servizio non è riuscito dall'avvio del sistema. Il conteggio viene reimpostato su 0 se il servizio non è riuscito per dwResetPeriod secondi. Quando il servizio non riesce per la Nvolta, il controller del servizio esegue l'azione specificata nell'elemento [N-1] della matrice lpsaActions . Se N è maggiore di cActions, il controller del 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 del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

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