Modifier la méthode de la _ classe BaseService Win32

La méthode de la classe change WMI modifie un objet de service dérivé de Win32 _ BaseService. Le paramètre _ LoadOrderGroup Win32 représente un groupe de services système qui définissent des dépendances d’exécution. Les services doivent être lancés dans l’ordre spécifié par le groupe d’ordre de chargement, car les services dépendent les uns des autres. Ces services dépendants requièrent que les services antécédents fonctionnent correctement.

Cette rubrique utilise la syntaxe format MOF (MOF). Pour plus d’informations sur l’utilisation de cette méthode, consultez appel d’une méthode.

Syntaxe

uint32 Change(
  [in] string  DisplayName,
  [in] string  PathName,
  [in] uint8   ServiceType,
  [in] uint8   ErrorControl,
  [in] string  StartMode,
  [in] boolean DesktopInteract,
  [in] string  StartName,
  [in] string  StartPassword,
  [in] string  LoadOrderGroup,
  [in] string  LoadOrderGroupDependencies[],
  [in] string  ServiceDependencies[]
);

Paramètres

DisplayName [ dans]

Nom complet d’un service. Cette chaîne a une longueur maximale de 256 caractères. Le nom est conservé dans le gestionnaire de contrôle des services. Les comparaisons DisplayName ne respectent jamais la casse.

Contraintes : accepte la même valeur que le paramètre Name .

Exemple : « Atdisk ».

Nom du chemin [ dans]

Chemin d’accès qualifié complet au fichier exécutable qui implémente un service.

Exemple : " \ systemroot \ system32 \ drivers \afd.sys".

ServiceType [ dans]

Type de services fourni aux processus qui les appellent.

Pilote de noyau (1)

Pilote du système de fichiers (2)

Adaptateur (4)

Pilote de reconnaissance (8)

Propre processus (16)

Processus de partage (32)

(256)

Processus interactif

ErrorControl [ dans]

Gravité d’une erreur si ce service ne démarre pas au démarrage. La valeur indique l’action prise par le programme de démarrage si une défaillance se produit. Le système journalise toutes les erreurs.

Ignorer (0)

L'utilisateur n'est pas notifié.

Normal (1)

Normal. L'utilisateur est notifié.

Grave (2)

Le système est redémarré avec la dernière bonne configuration.

Critique (3)

Le système tente de redémarrer avec une bonne configuration.

StartMode [ dans]

mode de démarrage du service de base Windows.

Démarrage du démarrage (« démarrage »)

Pilote de périphérique Démarré par le chargeur du système d’exploitation.

Démarrage système (« système »)

Pilote de périphérique Démarré par le processus d’initialisation du système d’exploitation. Cette valeur est uniquement valide pour les services de pilote.

Démarrage automatique (« automatique »)

Service pour démarrer automatiquement par le gestionnaire de contrôle des services lors du démarrage du système.

Début de la demande (« manuel »)

Service à démarrer par le gestionnaire de contrôle des services lorsqu’un processus appelle la méthode StartService .

Désactivé ("désactivé")

Service qui ne peut pas être démarré.

DesktopInteract [ dans]

Si la valeur est true, le service peut créer ou communiquer avec une fenêtre sur le bureau.

StartName [ dans]

Nom du compte sous lequel le service s’exécute, qui dépend du type de service. Le nom du compte peut se présenter sous la forme nom_domaine \ nom_utilisateur ou. \ Nom d’utilisateur. Lorsqu’il s’exécute, le processus de service est enregistré à l’aide de l’une des deux formes précédentes. Si le compte appartient au domaine intégré,. \ Le nom d’utilisateur peut être spécifié. Si une chaîne vide est spécifiée, le service est connecté en tant que compte LocalSystem. Pour les pilotes au niveau du noyau ou du système, StartName contient le nom d’objet du pilote, par exemple, système de \ fichiers \ RDR ou \ pilote \ XNS, que le système d’entrée et de sortie utilise pour charger le pilote de périphérique. Si null est spécifié, le pilote s’exécute avec un nom d’objet par défaut créé par le système d’e/s en fonction du nom du service, par exemple, \ administrateur DWDOM.

Vous pouvez également utiliser le format UPN (user principal name) pour spécifier le StartName, par exemple, Username@DomainName .

StartPassword [ dans]

Mot de passe du nom de compte que le paramètre StartName spécifie. Spécifiez null lorsque vous ne modifiez pas le mot de passe. Spécifiez une chaîne vide si le service n’a pas de mot de passe.

Notes

Lorsque vous modifiez un service de système local en réseau ou de réseau à système local, StartPassword doit être une chaîne vide ("") et non null.

LoadOrderGroup [ dans]

Nom du groupe auquel il est associé. Les groupes d’ordre de chargement sont contenus dans le registre système et déterminent la séquence de chargement des services dans un système d’exploitation. Si le pointeur est null ou pointe vers une chaîne vide, le service n’appartient pas à un groupe. Les dépendances entre les groupes doivent être listées dans le paramètre LoadOrderGroupDependencies . Les services de la liste de groupes d’ordre de chargement sont démarrés en premier, suivis par des services dans des groupes qui ne figurent pas dans la liste des groupes d’ordre de chargement, suivis par des services qui n’appartiennent pas à un groupe. Le registre système contient une liste de groupes d’ordre de chargement situés dans HKEY _ local _ machine \ System \ CurrentControlSet \ Control \ ServiceGroupOrder.

LoadOrderGroupDependencies [ dans]

Liste des groupes d’ordre de chargement qui doivent démarrer avant le démarrage de ce service. Le tableau se termine par un caractère double null. Si le pointeur a la valeur null, ou s’il pointe vers une chaîne vide, le service n’a pas de dépendances. Les noms de groupes doivent être préfixés par l' _ _ identificateur de groupe SC (défini dans le fichier winsvc. h) pour les différencier des noms de service, car les services et les groupes de services partagent le même espace de noms. La dépendance sur un groupe signifie que ce service peut s’exécuter si au moins un membre du groupe est en cours d’exécution après une tentative de démarrage de tous les membres du groupe.

ServiceDependencies [ dans]

Liste qui contient les noms des services qui doivent démarrer avant le démarrage de ce service. Le tableau se termine par un caractère double null. Si le pointeur est null ou pointe vers une chaîne vide, le service n’a pas de dépendances. La dépendance sur un service signifie que ce service ne peut s’exécuter que si le service dont il dépend est en cours d’exécution.

Valeur retournée

Retourne l’une des valeurs répertoriées dans la liste suivante, ou une valeur différente pour indiquer une erreur.

Success

0

La demande est acceptée.

Non pris en charge

1

La demande n'est pas prise en charge.

Accès refusé

2

L’utilisateur ne dispose pas des privilèges d’accès nécessaires.

Services dépendants en cours d’exécution

3

Le service ne peut pas être arrêté car d'autres services en cours d'exécution en dépendent.

Contrôle de service non valide

4

Le code de contrôle demandé n’est pas valide ou n’est pas acceptable pour le service.

Le service ne peut pas accepter le contrôle

5

Le code de contrôle demandé ne peut pas être envoyé au service, car la propriété d' État de l’objet _ BaseService Win32 est égale à 0, 1 ou 2.

Service non actif

6

Le service n'a pas été démarré.

Délai d’expiration de la demande de service

7

Le service ne répond pas rapidement à la demande de démarrage.

Échec inconnu

8

Processus interactif.

Chemin introuvable

9

Le chemin d’accès au répertoire du fichier exécutable du service est introuvable.

Service déjà en cours d’exécution

10

Le service est déjà en cours d'exécution.

Base de données du service verrouillée

11

La base de données pour ajouter un nouveau service est verrouillée.

Dépendance de service supprimée

12

Une dépendance sur laquelle ce service repose est supprimée du système.

Échec de la dépendance du service

13

Le service ne trouve pas le service nécessaire à partir d’un service dépendant.

Service désactivé

14

Le service est désactivé du système.

Échec de l’ouverture de session du service

15

Le service ne dispose pas de l'authentification correcte pour être exécuté sur le système.

Service marqué pour suppression

16

Ce service est en cours de suppression du système.

Service sans thread

17

Il n'y a pas de thread d'exécution pour le service.

Dépendance circulaire d’État

18

Le démarrage du service donne lieu à des dépendances circulaires.

Nom de l’État en double

19

Un service est en cours d'exécution sous le même nom.

Nom de l’état non valide

20

Le nom du service contient des caractères non valides.

Paramètre d’État non valide

21

Des paramètres non valides ont été transmis au service.

Compte de service de l’état non valide

22

Le compte pour lequel ce service doit être exécuté n’est pas valide ou ne dispose pas des autorisations nécessaires pour exécuter le service.

Le service d’État existe

23

Le service existe dans la base de données des services disponibles dans le système.

Service déjà suspendu

24

Le service est actuellement mis en pause dans le système.

Autres

25 4294967295

Remarques

Pour modifier un service d’un réseau en un système local, utilisez les valeurs suivantes pour les paramètres StartName et StartPassword :

StartName = "LocalSystem"
StartPassword = "" // - empty string, not NULL

Pour modifier un service d’un système local en réseau, utilisez les valeurs suivantes pour les paramètres StartName et StartPassword :

StartName = "NT AUTHORITY\NetworkService"
StartPassword = "" // - empty string, not NULL

Configuration requise

Condition requise Valeur
Client minimal pris en charge
Windows Vista
Serveur minimal pris en charge
Windows Server 2008
Espace de noms
\Cimv2 racine
En-tête
Mbnapi. h
MOF
CIMWin32. mof
DLL
CIMWin32.dll

Voir aussi

Classes du système d’exploitation

_BaseService Win32