structure SERVICE_NOTIFY_2W (winsvc.h)
Représente les informations de notification d’état du service. Il est utilisé par la fonction NotifyServiceStatusChange.
Syntaxe
typedef struct _SERVICE_NOTIFY_2W {
DWORD dwVersion;
PFN_SC_NOTIFY_CALLBACK pfnNotifyCallback;
PVOID pContext;
DWORD dwNotificationStatus;
SERVICE_STATUS_PROCESS ServiceStatus;
DWORD dwNotificationTriggered;
LPWSTR pszServiceNames;
} SERVICE_NOTIFY_2W, *PSERVICE_NOTIFY_2W;
Membres
dwVersion
Version de la structure. Ce membre doit être SERVICE_NOTIFY_STATUS_CHANGE (2).
pfnNotifyCallback
Pointeur vers la fonction de rappel. Pour plus d’informations, consultez Remarques.
pContext
Toutes les données définies par l’utilisateur à passer à la fonction de rappel.
dwNotificationStatus
Valeur qui indique l’état de notification. Si ce membre est ERROR_SUCCESS, la notification a réussi et le membre ServiceStatus contient des informations valides. Si ce membre est ERROR_SERVICE_MARKED_FOR_DELETE, le service a été marqué pour suppression et le handle de service utilisé par NotifyServiceStatusChange doit être fermé.
ServiceStatus
Structure SERVICE_STATUS_PROCESS qui contient les informations d’état du service. Ce membre n’est valide que si dwNotificationStatus est ERROR_SUCCESS.
dwNotificationTriggered
Si dwNotificationStatus est ERROR_SUCCESS, ce membre contient un masque de bits des notifications qui ont déclenché cet appel à la fonction de rappel.
pszServiceNames
Si dwNotificationStatus est ERROR_SUCCESS et que la notification est SERVICE_NOTIFY_CREATED ou SERVICE_NOTIFY_DELETED, ce membre est valide et il s’agit d’une chaîne MULTI_SZ qui contient un ou plusieurs noms de service. Les noms des services créés auront un préfixe « / » pour vous permettre de les distinguer des noms des services supprimés.
Si ce membre est valide, la fonction de rappel de notification doit libérer la chaîne à l’aide de la fonction LocalFree.
Remarques
La fonction de rappel est déclarée comme suit :
typedef VOID( CALLBACK * PFN_SC_NOTIFY_CALLBACK ) (
IN PVOID pParameter
);
La fonction de rappel reçoit un pointeur vers la structure SERVICE_NOTIFY fournie par l’appelant.
Note
L’en-tête winsvc.h définit SERVICE_NOTIFY_2 en tant qu’alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows Vista [applications de bureau uniquement] |
serveur minimum pris en charge | Windows Server 2008 [applications de bureau uniquement] |
d’en-tête | winsvc.h (inclure Windows.h) |