Méthode SWbemServices.SubclassesOf

La méthode SubclassesOf de l’objet SWbemServices retourne un objet SWbemObjectSet. Cet objet est une collection de sous-classes d’une classe spécifiée. Les éléments de la collection retournée peuvent être obtenus à l’aide de méthodes de collection standard. Pour plus d’informations, consultez Accès à une collection.

La méthode fonctionne uniquement pour les objets de classe.

La méthode est appelée en mode semi-synchrone. Pour plus d’informations, consultez Appel d’une méthode.

Pour obtenir une explication de cette syntaxe, consultez Conventions de document pour l’API de script.

Syntaxe

objWbemObjectSet = .SubclassesOf( _
  [ ByVal strSuperclass ], _
  [ ByVal iFlags ], _
  [ ByVal objWbemNamedValueSet ] _
)

Paramètres

strSuperclass [facultatif]

Spécifie un nom de classe parent. Seules les sous-classes de cette classe retournent dans l’énumérateur. Si ce paramètre est vide et si iFlags est wbemQueryFlagShallow, seules les classes de niveau supérieur sont retournées (c’est-à-dire, les classes qui n’ont pas de classe parente). Si ce paramètre est vide et si iFlags est wbemQueryFlagDeep, toutes les classes de l’espace de noms sont retournées.

iFlags [facultatif]

Détermine le détail de l’énumération de l’appel. Les valeurs par défaut de ce paramètre sont wbemFlagReturnImmediately et wbemQueryFlagDeep. Ce paramètre peut accepter les valeurs suivantes.

wbemQueryFlagShallow (1 (0x1))

Force l’énumération à inclure uniquement les sous-classes immédiates de la classe parente spécifiée.

wbemQueryFlagDeep (0 (0x0))

Valeur par défaut pour ce paramètre. Cette valeur force l’énumération récursive dans toutes les sous-classes dérivées de la classe parente spécifiée. La classe parente n’est pas retournée dans l’énumération.

wbemFlagReturnImmediately (16 (0x10))

Provoque le retour immédiat de l’appel.

wbemFlagReturnWhenComplete (0 (0x0))

Provoque le blocage de cet appel jusqu’à ce que l’appel soit terminé. Cet indicateur appelle la méthode en mode synchrone.

wbemFlagUseAmendedQualifiers (131072 (0x20000))

Permet à WMI de retourner des données de modification de classe avec la définition de classe de base. Pour plus d’informations, consultez Localisation des informations de classe WMI.

objWbemNamedValueSet [facultatif]

En règle générale, ceci n’est pas défini. Sinon, il s’agit d’un objet SWbemNamedValueSet dont les éléments représentent les informations de contexte qui peuvent être utilisées par le fournisseur répondant à la requête. Un fournisseur qui prend en charge ou exige de telles informations doit documenter les noms des valeurs reconnues, le type de données de la valeur, les valeurs autorisées et la sémantique.

Valeur retournée

Si la méthode réussit, un objet SWbemObjectSet est retourné.

Codes d’erreur

Une fois la méthode SubclassesOf terminée, l’objet Err peut contenir l’un des codes d’erreur de la liste suivante.

Notes

Une collection retournée qui ne contient aucun élément n’est pas une erreur.

wbemErrAccessDenied - 2147749891 (0x80041003)

L’utilisateur actuel n’a pas l’autorisation de voir une ou plusieurs des classes retournées par l’appel.

wbemErrFailed – 2147749889 (0x80041001)

Erreur non spécifiée.

wbemErrInvalidClass - 2147749904 (0x80041010)

La classe spécifiée n’existe pas.

wbemErrInvalidParameter - 2147749896 (0x80041008)

Un paramètre non valide a été spécifié.

wbemErrOutOfMemory - 2147749894 (0x80041006)

La mémoire disponible est insuffisante pour terminer cette opération.

Exemples

L’exemple PowerShell suivant montre comment récupérer les sous-classes d’une classe sur un système distant.

$NameSpace = 'root\ccm'
$ComputerName = 'sccm.company.com'
$WbemLocator = New-Object -ComObject "WbemScripting.SWbemLocator"
$WbemServices = $WbemLocator.ConnectServer($ComputerName, $Namespace)
$WbemClasses = $WbemServices.SubclassesOf()
$WbemClasses

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows Vista
Serveur minimal pris en charge
Windows Server 2008
En-tête
Wbemdisp.h
Bibliothèque de types
Wbemdisp.tlb
DLL
Wbemdisp.dll
CLSID
CLSID_SWbemServices
IID
IID_ISWbemServices

Voir aussi

SWbemServices

SWbemObjectSet