Méthode de modification de la classe Win32_SystemDriver

La méthode declasse Change WMI modifie un service Win32_SystemDriver . Le paramètre Win32_LoadOrderGroup représente un regroupement de services système définissant 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 nécessitent la présence des services antécédents pour fonctionner correctement.

Cette rubrique utilise la syntaxe MOF (Managed Object Format). 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 [in]

Nom d’affichage du service. Cette chaîne a une longueur maximale de 256 caractères. Le nom est conservé selon la casse dans le gestionnaire de contrôle de service. Les comparaisons DisplayName ne respectent toujours pas la casse.

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

Exemple : « Atdisk »

PathName [in]

Chemin complet du fichier exécutable qui implémente le service.

Exemple : \SystemRoot\System32\drivers\afd.sys

ServiceType [in]

Type de services fournis aux processus qui les appellent.

1 (0x1)

Pilote de noyau

2 (0x2)

Pilote de système de fichiers

4 (0x4)

Adaptateur

8 (0x8)

Pilote recognizer

16 (0x10)

Processus propre

32 (0x20)

Processus de partage

256 (0x100)

Processus interactif

ErrorControl [in]

Gravité de l’erreur si ce service ne parvient pas à démarrer au démarrage. La valeur indique l’action effectuée par le programme de démarrage en cas d’échec. Toutes les erreurs sont enregistrées par le système.

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 [in]

Mode de démarrage du service de base Windows.

Démarrage

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

Démarrage

Pilote de périphérique que le chargeur du système d’exploitation démarre.

Démarrage du 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

Service à démarrer automatiquement par le gestionnaire de contrôle de service lors du démarrage du système.

Démarrage de la demande

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

Handicapés

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

DesktopInteract [in]

Valeur qui, si la valeur est True, le service peut créer ou communiquer avec les fenêtres du bureau.

StartName [in]

Nom de compte sous lequel le service s’exécute. Selon le type de service, le nom du compte peut être sous la forme DomainName\Username ou .\Username. Lorsqu’il s’exécute, le processus de service est journalisé à l’aide de l’un de ces deux formulaires. Si le compte appartient au domaine intégré, .\Username 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 de l’objet du pilote, par exemple, \FileSystem\Rdr ou \Driver\Xns), que le système d’entrée et de sortie (E/S) 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 que le système d’E/S crée en fonction du nom du service, par exemple, DWDOM\Administration.

Vous pouvez également utiliser le format Nom d’utilisateur principal (UPN) pour spécifier le StartName, par exemple, Username@DomainName.

StartPassword [in]

Mot de passe du nom de compte spécifié par le paramètre StartName . Spécifiez NULL si vous ne modifiez pas le mot de passe. Spécifiez une chaîne vide si le service ne possède pas de mot de passe.

Notes

Lors de la modification d’un service d’un système local en réseau ou d’un réseau vers un système local, StartPassword doit être une chaîne vide («  ») et non NULL.

LoadOrderGroup [in]

Nom du groupe auquel il est associé. Les groupes de commandes de chargement sont contenus dans le registre système et déterminent la séquence dans laquelle les services sont chargés dans le système d’exploitation. Si le pointeur a la valeur NULL ou s’il pointe vers une chaîne vide, le service n’appartient pas à un groupe. Les dépendances entre les groupes doivent être répertoriées dans le paramètre LoadOrderGroupDependencies . Les services de la liste des groupes d’ordre de chargement sont démarrés en premier, suivis des services dans les groupes qui ne figurent pas dans la liste des groupes d’ordre de chargement, suivis des services qui n’appartiennent pas à un groupe. Le Registre système contient une liste de groupes d’ordre de chargement situés à l’adresse suivante :

HKEY_LOCAL_MACHINE\Système\Currentcontrolset\Contrôle\ServiceGroupOrder

LoadOrderGroupDependencies [in]

Liste des groupes d’ordre de charge qui doivent démarrer avant le démarrage de ce service. Le tableau est doublement terminé par null. Si le pointeur a la valeur NULL ou s’il pointe vers une chaîne vide, le service n’a aucune dépendance. Les noms de groupes doivent être précédés du caractère SC_GROUP_IDENTIFIER (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 à un groupe signifie que ce service peut s’exécuter si au moins un membre du groupe s’exécute après une tentative de démarrage de tous les membres du groupe.

ServiceDependencies [in]

Liste qui contient les noms des services qui doivent démarrer avant que ce service ne démarre. Le tableau est doublement terminé par null. Si le pointeur a la valeur NULL ou s’il pointe vers une chaîne vide, le service n’a aucune dépendance. La dépendance à 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 une valeur de zéro (0) si le service a été correctement modifié, 1 (un) si la demande n’est pas prise en charge et tout autre nombre pour indiquer une erreur.

Réussite (0)

Non pris en charge (1)

Accès refusé (2)

Services dépendants en cours d’exécution (3)

Contrôle de service non valide (4)

Le service ne peut pas accepter le contrôle (5)

Service non actif (6)

Délai d’expiration de la demande de service (7)

Échec inconnu (8)

Chemin introuvable (9)

Service déjà en cours d’exécution (10)

Base de données de service verrouillée (11)

Dépendance de service supprimée (12)

Échec de dépendance de service (13)

Service désactivé (14)

Échec de l’ouverture de session du service (15)

Service marqué pour suppression (16)

Service No Thread (17)

Dépendance circulaire d’état (18)

Nom dupliqué d’état (19)

Nom non valide de l’état (20)

Paramètre non valide d’état (21)

État Compte de service non valide (22)

Service d’état existant (23)

Service déjà suspendu (24)

Autres (25 4294967295)

Notes

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

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

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

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

Spécifications

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

Voir aussi

Classes du système d’exploitation

Win32_SystemDriver