Partager via


structure SERVICE_REQUIRED_PRIVILEGES_INFOA (winsvc.h)

Représente les privilèges requis pour un service.

Syntaxe

typedef struct _SERVICE_REQUIRED_PRIVILEGES_INFOA {
  LPSTR pmszRequiredPrivileges;
} SERVICE_REQUIRED_PRIVILEGES_INFOA, *LPSERVICE_REQUIRED_PRIVILEGES_INFOA;

Membres

pmszRequiredPrivileges

Multi-chaîne qui spécifie les privilèges. Pour obtenir la liste des valeurs possibles, consultez Constantes de privilèges.

Une chaîne multiple est une séquence de chaînes terminées par null, terminées par une chaîne vide (\0). Voici un exemple : String1\0String2\0String3\0LastString\0\0.

Remarques

La modification des privilèges requis prend effet lors du prochain démarrage du service. Le SCM détermine si le service peut prendre en charge les privilèges spécifiés lorsqu’il tente de démarrer le service.

Il est préférable d’analyser votre service et d’utiliser l’ensemble minimal de privilèges requis.

Si vous ne définissez pas les privilèges requis, le SCM utilise tous les privilèges attribués par défaut au jeton de processus. Si vous spécifiez des privilèges pour un service, le SCM supprime les privilèges qui ne sont pas requis du jeton de processus au démarrage du processus. Si plusieurs services partagent un processus, le SCM calcule l’union des privilèges requis par tous les services du processus.

À des fins de compatibilité, le privilège SeChangeNotifyPrivilege n’est jamais supprimé d’un jeton de processus, même si aucun service du processus n’a demandé le privilège. Par conséquent, un service n’a pas besoin de spécifier explicitement ce privilège.

Notes

L’en-tête winsvc.h définit SERVICE_REQUIRED_PRIVILEGES_INFO comme un 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.

Configuration requise

   
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau uniquement]
En-tête winsvc.h (inclure Windows.h)

Voir aussi

ChangeServiceConfig2

QueryServiceConfig2