IWbemClassObject ::SpawnDerivedClass, méthode (wbemcli.h)
Utilisez la méthode IWbemClassObject ::SpawnDerivedClass pour créer un objet de classe nouvellement dérivé de l’objet actif. L’objet actuel doit être une définition de classe qui devient la classe parente de l’objet généré. L’objet retourné devient une sous-classe de l’objet actuel.
Syntaxe
HRESULT SpawnDerivedClass(
[in] long lFlags,
[out] IWbemClassObject **ppNewClass
);
Paramètres
[in] lFlags
Réservé. Ce paramètre doit être 0.
[out] ppNewClass
Impossible d’avoir la valeur NULL. Cela reçoit le pointeur vers le nouvel objet de définition de classe. L’appelant doit appeler IWbemClassObject ::Release lorsque l’objet n’est plus requis, généralement après avoir appelé IWbemServices ::P utClass pour écrire la définition de classe. En cas d’erreur, un nouvel objet n’est pas retourné et ppNewClass n’est pas modifié.
Valeur retournée
Cette méthode retourne une valeur HRESULT qui indique le statut de l'appel de méthode. La liste suivante répertorie la valeur contenue dans un HRESULT. Pour connaître les valeurs HRESULT générales, consultez Codes d’erreur système.
Remarques
Le nouvel objet retourné dans ppNewClass devient automatiquement une sous-classe de l’objet actif. Ce comportement ne peut pas être substitué. Il n’existe aucune autre méthode par laquelle les sous-classes (classes dérivées) peuvent être créées.
Vous ne pouvez pas créer une classe dérivée à partir d’une classe locale de votre propre processus client. La classe parente (classe de base) doit être créée et inscrite auprès de Windows Management à l’aide de IWbemServices ::P utClass, puis récupérée à l’aide de IWbemServices ::GetObject avant que cette méthode puisse être utilisée pour créer une classe dérivée.
Pour créer une hiérarchie de classes, vous devez créer la classe initiale avec IWbemServices ::P utClass, la récupérer à l’aide d’IWbemServices ::GetObject et utiliser l’objet récupéré pour créer la classe nouvellement dérivée. Ensuite, cette classe nouvellement dérivée doit être créée à l’aide de IWbemServices ::P utClass. Pour créer d’autres classes dérivées, vous devez appeler IWbemServices ::GetObject, puis appeler IWbemClassObject ::SpawnDerivedClass, et ainsi de suite, dans un cycle pour chaque nouveau niveau de dérivation. Vous devez suivre cette procédure pour éviter les erreurs de version et les conflits d’accès concurrentiel. Pour plus d’informations sur la création d’une classe sans parent, consultez Création d’une classe.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista |
Serveur minimal pris en charge | Windows Server 2008 |
Plateforme cible | Windows |
En-tête | wbemcli.h (inclure Wbemidl.h) |
Bibliothèque | WbemUuid.lib |
DLL | CIMWin32.dll ; Esscli.dll ; Fastprox.dll ; FrameDyn.dll ; FrameDynOS.dll ; Krnlprov.dll ; Ncprov.dll ; Wbemcore.dll ; Wbemess.dll ; Wmipiprt.dll |