Partager via


structure SERVICE_REQUIRED_PRIVILEGES_INFOW (winsvc.h)

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

Syntaxe

typedef struct _SERVICE_REQUIRED_PRIVILEGES_INFOW {
  LPWSTR pmszRequiredPrivileges;
} SERVICE_REQUIRED_PRIVILEGES_INFOW, *LPSERVICE_REQUIRED_PRIVILEGES_INFOW;

Membres

pmszRequiredPrivileges

Chaîne multiple qui spécifie les privilèges. Pour obtenir la liste des valeurs possibles, consultez constantes privilege.

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

Remarques

La modification des privilèges requis prend effet la prochaine fois que le service est démarré. 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.

Pour la 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 explicitement de spécifier ce privilège.

Note

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

Voir aussi

changeServiceConfig2

QueryServiceConfig2