Condividi tramite


struttura SERVICE_NOTIFY_2A (winsvc.h)

Rappresenta le informazioni di notifica dello stato del servizio. Viene usato dalla funzione NotifyServiceStatusChange .

Sintassi

typedef struct _SERVICE_NOTIFY_2A {
  DWORD                  dwVersion;
  PFN_SC_NOTIFY_CALLBACK pfnNotifyCallback;
  PVOID                  pContext;
  DWORD                  dwNotificationStatus;
  SERVICE_STATUS_PROCESS ServiceStatus;
  DWORD                  dwNotificationTriggered;
  LPSTR                  pszServiceNames;
} SERVICE_NOTIFY_2A, *PSERVICE_NOTIFY_2A;

Membri

dwVersion

Versione della struttura. Questo membro deve essere SERVICE_NOTIFY_STATUS_CHANGE (2).

pfnNotifyCallback

Puntatore alla funzione di callback. Per altre informazioni, vedere Osservazioni.

pContext

Tutti i dati definiti dall'utente da passare alla funzione di callback.

dwNotificationStatus

Valore che indica lo stato della notifica. Se questo membro è ERROR_SUCCESS, la notifica ha avuto esito positivo e il membro ServiceStatus contiene informazioni valide. Se questo membro è ERROR_SERVICE_MARKED_FOR_DELETE, il servizio è stato contrassegnato per l'eliminazione e l'handle del servizio usato da NotifyServiceStatusChange deve essere chiuso.

ServiceStatus

Struttura SERVICE_STATUS_PROCESS che contiene le informazioni sullo stato del servizio. Questo membro è valido solo se dwNotificationStatus è ERROR_SUCCESS.

dwNotificationTriggered

Se dwNotificationStatus è ERROR_SUCCESS, questo membro contiene una maschera di bit delle notifiche che hanno attivato questa chiamata alla funzione di callback.

pszServiceNames

Se dwNotificationStatus è ERROR_SUCCESS e la notifica è SERVICE_NOTIFY_CREATED o SERVICE_NOTIFY_DELETED, questo membro è valido ed è una stringa MULTI_SZ che contiene uno o più nomi di servizio. I nomi dei servizi creati avranno un prefisso "/" per distinguerli dai nomi dei servizi eliminati.

Se questo membro è valido, la funzione di callback di notifica deve liberare la stringa usando la funzione LocalFree .

Osservazioni

La funzione di callback viene dichiarata come segue:

typedef VOID( CALLBACK * PFN_SC_NOTIFY_CALLBACK ) (
    IN PVOID pParameter 
);

La funzione di callback riceve un puntatore alla struttura SERVICE_NOTIFY fornita dal chiamante.

Nota

L'intestazione winsvc.h definisce SERVICE_NOTIFY_2 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.

Fabbisogno

Requisito Valore
client minimo supportato Windows Vista [solo app desktop]
server minimo supportato Windows Server 2008 [solo app desktop]
intestazione winsvc.h (include Windows.h)

Vedere anche

NotifyServiceStatusChange

SERVICE_STATUS_PROCESS