Partager via


Win32_StartupCommand classe

La classe WMIWin32_StartupCommand représente une commande qui s’exécute automatiquement lorsqu’un utilisateur se connecte au système informatique.

La syntaxe suivante est simplifiée par rapport au code MOF (Managed Object Format) et inclut toutes les propriétés héritées. Les propriétés et les méthodes sont dans l’ordre alphabétique, et non dans l’ordre MOF.

Syntaxe

[Dynamic, Provider("CIMWin32"), Privileges("SeRestorePrivilege"), UUID("{8502C50A-5FBB-11D2-AAC1-006008C78BC7}"), AMENDMENT]
class Win32_StartupCommand : CIM_Setting
{
  string Caption;
  string Description;
  string SettingID;
  string Command;
  string Location;
  string Name;
  string User;
  string UserSID;
};

Membres

La classe Win32_StartupCommand a les types de membres suivants :

Propriétés

La classe Win32_StartupCommand a ces propriétés.

Caption

Type de données : chaîne

Type d'accès : Lecture seule

Qualificateurs : MaxLen (64)

Brève description textuelle de l’objet actuel.

Cette propriété est héritée de CIM_Setting.

Commande

Type de données : chaîne

Type d'accès : Lecture seule

Qualificateurs : key, MappingStrings (« Win32Registry| SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run »)

Commande exécutée par la commande de démarrage.

WMI obtient ces données à partir de la clé de Registre

HKEY_LOCAL_MACHINE\LOGICIEL\Microsoft\Windows\Currentversion\Courir

Exemple : « C:\Windows\notepad.exe myfile.txt »

Description

Type de données : chaîne

Type d'accès : Lecture seule

Description textuelle de l’objet actuel.

Cette propriété est héritée de CIM_Setting.

Lieu

Type de données : chaîne

Type d'accès : Lecture seule

Qualificateurs : key, MappingStrings (« Win32Registry|\\SOFTWARE\\MICROSOFT\\WINDOWS\\CURRENTVERSION\\Windows »)

Chemin d’accès où réside la commande de démarrage sur le système de fichiers de disque.

Par exemple : HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

Démarrage (« Démarrage »)

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

HKLM\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run (« HKLM\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run »)

HKLM\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\RunServices (« HKLM\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\RunServices »)

Nom

Type de données : chaîne

Type d'accès : Lecture seule

Qualificateurs : key, MappingStrings (« Win32API| Structures de fichiers| WIN32_FIND_DATA|cFileName »)

Nom de fichier de la commande de démarrage.

Exemple : « FindFast »

SettingID

Type de données : chaîne

Type d'accès : Lecture seule

Qualificateurs : MaxLen (256)

Identificateur par lequel l’objet actuel est connu.

Cette propriété est héritée de CIM_Setting.

Utilisateur

Type de données : chaîne

Type d'accès : Lecture seule

Qualificateurs : key, MappingStrings (« WMI »)

Nom d’utilisateur pour lequel cette commande de démarrage s’exécutera.

Exemple : « mydomain\myname »

UserSID

Type de données : chaîne

Type d'accès : Lecture seule

Qualificateurs : MappingStrings (« WMI »)

La propriété UserSID indique le SID de l’utilisateur pour lequel cette commande de démarrage s’exécutera. Cette propriété User peut être vide, mais UserSID a toujours une valeur si le nom d’utilisateur ne peut pas être résolu (comme dans le cas d’un utilisateur supprimé). La propriété est utile pour faire la distinction entre les commandes associées à deux utilisateurs différents avec des noms non résolus. Elle peut être NULL lorsque la commande est associée à des éléments qui n’identifient pas réellement un utilisateur comme Tous les utilisateurs.

Exemple :S-1-5-21-1579938362-1064596589-3161144252-1006

Notes

La classe Win32_StartupCommand est dérivée de CIM_Setting.

Le démarrage de l’ordinateur ne se termine pas une fois le système d’exploitation chargé. Au lieu de cela, le système d’exploitation Windows peut être configuré pour que les commandes de démarrage soient exécutées chaque fois que Windows démarre. Les commandes de démarrage sont stockées dans le registre ou dans le profil utilisateur et sont utilisées pour démarrer automatiquement les scripts ou applications spécifiés chaque fois que Windows est chargé.

Dans la plupart des cas, les programmes de démarrage automatique sont utiles; ils garantissent que certaines applications, telles que les outils antivirus, sont automatiquement démarrées et exécutées chaque fois que Windows est chargé. Toutefois, les programmes de démarrage automatique peuvent également être responsables de problèmes tels que :

  • Ordinateurs dont le démarrage prend un temps exceptionnellement long. Cela peut être le résultat d’un grand nombre d’applications qui doivent être démarrées chaque fois que Windows démarre.
  • Applications représentées dans la barre des tâches ou dans le Gestionnaire des tâches, même si l’utilisateur ne les a pas démarrées. Bien que ces applications ne provoquent pas nécessairement de problèmes, elles peuvent entraîner des appels de support technique d’utilisateurs qui sont confus quant à l’origine de ces programmes et à la raison de leur exécution.
  • Les ordinateurs rencontrent des problèmes même s’ils semblent inactifs. Ces problèmes sont souvent suivis des commandes de démarrage qui sont en cours d’exécution lorsque personne n’est conscient qu’elles sont en cours d’exécution.

L’identification des applications et des scripts qui s’exécutent automatiquement au démarrage est une tâche d’administration importante mais difficile, car les commandes de démarrage peuvent être stockées dans de nombreux emplacements différents :

  • HKLM\Software\Microsoft\Windows\CurrentVersion\Run
  • HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce
  • HKCU\Software\Microsoft\Windows\CurrentVersion\Run
  • HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce
  • HKU\ProgID\Software\Microsoft\Windows\CurrentVersion\Run
  • systemdrive\Documents and Settings\All Users\Start Menu\Programs\Startup
  • systemdrive\Documents and Settings\username\Menu Démarrer\Programs\Startup

Vous pouvez utiliser la classe Win32_StartupCommand WMI pour énumérer les programmes de démarrage automatique, quel que soit l’emplacement de stockage des informations.

Le processus appelant qui utilise cette classe doit avoir le privilège SE_RESTORE_NAME sur l’ordinateur sur lequel réside le Registre. Par exemple, si vous énumérez cette classe sur l’ordinateur local, le compte sous lequel votre application s’exécute doit disposer de ce privilège. Pour plus d’informations, consultez Exécution d’opérations privilégiées.

Vous pouvez modifier les valeurs de Registre où Win32_StartupCommand obtient des données en appelant les méthodes du fournisseur de registre système WMI dans un script ou en C++. Pour plus d’informations, consultez Modification du Registre système.

Exemples

Le code VBScript suivant énumère les commandes de démarrage sur un ordinateur.

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
 & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colStartupCommands = objWMIService.ExecQuery _
 ("SELECT * FROM Win32_StartupCommand")
For Each objStartupCommand in colStartupCommands
 Wscript.Echo "Command: " & objStartupCommand.Command
 Wscript.Echo "Description: " & objStartupCommand.Description
 Wscript.Echo "Location: " & objStartupCommand.Location
 Wscript.Echo "Name: " & objStartupCommand.Name
 Wscript.Echo "SettingID: " & objStartupCommand.SettingID
 Wscript.Echo "User: " & objStartupCommand.User
Next

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
MOF
CIMWin32.mof
DLL
CIMWin32.dll

Voir aussi

CIM_Setting

Classes du système d’exploitation