SWbemObject, objet
vous pouvez utiliser les méthodes et propriétés de l’objet SWbemObject pour représenter une définition de classe ou une instance d’objet Windows Management Instrumentation (WMI). Cet objet ne peut pas être créé par l’appel VBScript CreateObject .
Cet objet prend en charge deux types de propriétés et de méthodes. Ceux qui sont définis dans cette section sont des propriétés et des méthodes génériques qui s’appliquent à tous les objets WMI. En outre, cet objet expose les propriétés et les méthodes de l’objet sous-jacent sous forme de propriétés Automation dynamiques et de méthodes de SWbemObject. Les noms et les types de ces propriétés et méthodes dépendent de l’objet WMI sous-jacent. Pour plus d’informations sur la façon dont ces propriétés et méthodes dynamiques sont exposées, consultez manipulation des informations relatives aux classes et aux instances.
Du point de vue du client WMI, cet objet est toujours in-process. Les opérations d’écriture affectent uniquement la copie locale de l’objet, et les opérations de lecture récupèrent toujours les valeurs à partir de la copie locale. Les mises à jour de WMI sont effectuées uniquement lorsque des objets entiers sont écrits à l’aide d’un appel à la méthode SWbemObject. put _ . Si vous modifiez les propriétés ou les méthodes dans un objet SWbemObject , vos modifications ne sont pas écrites dans WMI tant que vous n’avez pas appelé SWbemObject. put _.
La méthode générique et les noms de propriété définis dans cette section se terminent toujours par un trait de soulignement (« _ ») de fin pour les différencier des méthodes et des propriétés WMI dynamiques de l’objet sous-jacent.
Notez que SWbemObject ne peut pas être créé à l’aide de la méthode VBScript GetObject. Si vous souhaitez créer une nouvelle classe vide, utilisez SWbemServices. obtenir avec un paramètre de chemin d’accès vide. Cet appel retourne un objet SWbemObject vide qui peut devenir une classe. Vous pouvez ensuite fournir un nom de classe pour la propriété de classe de l’objet SWbemObjectPath retourné par l’appel de chemin _ . Ajoutez des propriétés à la nouvelle classe par la méthode Properties _ . Pour créer une instance, appelez GetObject sur la nouvelle classe.
L’exemple de code suivant montre comment obtenir une nouvelle classe et lui ajouter une propriété. L’objet SWbemObject qui représente la classe doit être réécrit dans le référentiel WMI par un appel à put _.
wbemCimtypeString = 8
Set objSWbemService = GetObject("Winmgmts:root\default")
Set objClass = objSWbemService.Get()
objClass.Path_.Class = "NewClass"
' Add a property
' String property
objClass.Properties_.add "PropertyName", wbemCimtypeString
' Make the property a key property
objClass.Properties_("PropertyName").Qualifiers_.add "key", true
' Write the new class to the root\default namespace in the repository
Set objClassPath = objClass.Put_
WScript.Echo objClassPath.Path
'Create an instance of the new class using SWbemObject.SpawnInstance
Set objNewInst = GetObject( _
"Winmgmts:root\default:NewClass").Spawninstance_
objNewInst.PropertyName = "My Instance"
' Write the instance into the repository
Set objInstancePath = objNewInst.Put_
WScript.Echo objInstancePath.Path
Vous pouvez examiner le référentiel à l’aide d’un outil d’affichage tel que CIM Studio pour vérifier que la nouvelle classe et l’instance s’affichent. Pour obtenir un exemple de suppression d’une classe et d’une instance du référentiel, consultez SWbemServices. Delete ou SWbemObject. _ Delete.
Membres
L’objet SWbemObject possède les types de membres suivants :
Méthodes
L’objet SWbemObject possède ces méthodes.
| Méthode | Description |
|---|---|
| Associateurs_ | Récupère les associateurs de l’objet. |
| AssociatorsAsync_ | Récupère de manière asynchrone les associateurs de l’objet. |
| Répliqué_ | Effectue une copie de l’objet en cours. |
| CompareTo_ | Teste si deux objets sont égaux. |
| DELETE_ | Supprime l’objet de WMI. |
| DeleteAsync_ | Supprime de façon asynchrone l’objet de WMI. |
| ExecMethod_ | Exécute une méthode exportée par un fournisseur de méthode. |
| ExecMethodAsync_ | Exécute de façon asynchrone une méthode exportée par un fournisseur de méthode. |
| GetObjectText_ | Récupère la représentation textuelle de l’objet (syntaxe MOF). |
| Fois_ | Retourne une collection d’instances de l’objet (qui doit être une classe WMI). |
| InstancesAsync_ | Retourne de façon asynchrone une collection d’instances de l’objet (qui doit être une classe WMI). |
| Posé_ | Crée ou met à jour l’objet dans WMI. |
| PutAsync_ | Crée ou met à jour de façon asynchrone l’objet dans WMI. |
| Références_ | Retourne des références à l’objet. |
| ReferencesAsync_ | Retourne de façon asynchrone des références à l’objet. |
| SpawnDerivedClass_ | Crée une classe dérivée à partir de l’objet actuel (qui doit être une classe WMI). |
| SpawnInstance_ | Crée une nouvelle instance de à partir de l’objet en cours. |
| Sous-classes_ | Retourne une collection de sous-classes de l’objet (qui doit être une classe WMI). |
| SubclassesAsync_ | Retourne de façon asynchrone une collection de sous-classes de l’objet (qui doit être une classe WMI). |
Propriétés
L’objet SWbemObject possède les propriétés suivantes.
| Propriété | Type d’accès | Description |
|---|---|---|
| Dérivation_ |
Lecture seule |
Contient un tableau de chaînes qui décrit la hiérarchie de dérivation pour la classe. |
| Méthodes_ |
Lecture seule |
Objet SWbemMethodSet qui est la collection de méthodes pour cet objet. |
| Chemin_ |
Lecture seule |
Contient un objet SWbemObjectPath qui représente le chemin d’accès de l’objet de la classe ou de l’instance actuelle. |
| Propriétés_ |
Lecture seule |
Objet SWbemPropertySet qui est la collection de propriétés pour cet objet. |
| Qualificateurs_ |
Lecture seule |
Objet SWbemQualifierSet qui est la collection de qualificateurs pour cet objet. |
| Sécurité_ |
Lecture seule |
Contient un objet SWbemSecurity utilisé pour lire ou modifier les paramètres de sécurité. |
Exemples
La liste de toutes les propriétés et méthodes pour un exemple de code VBScript de classe WMI dans la Galerie TechNet utilise SWbemObject pour répertorier toutes les méthodes et propriétés d’une classe WMI spécifiée.
Configuration requise
| Condition requise | Valeur |
|---|---|
| Client minimal pris en charge |
Windows Vista |
| Serveur minimal pris en charge |
Windows Server 2008 |
| En-tête |
|
| Bibliothèque de types |
|
| DLL |
|
| CLSID |
CLSID _ SWbemObject |
| IID |
IID _ ISWbemObject |