Partager via


SpawnInstance, fonction

Crée une instance d’une classe.

Notes

Cette API est destinée à un usage interne uniquement. Elle n’est pas destinée à être utilisée dans le code du développeur.

Syntaxe

HRESULT SpawnInstance (
   [in] int                  vFunc,
   [in] IWbemClassObject*    ptr,
   [in] LONG                 lFlags,
   [out] IWbemClassObject**  ppNewInstance);

Paramètres

vFunc
[in] Ce paramètre est inutilisé.

ptr
[in] Pointeur vers une instance IWbemClassObject.

lFlags
[in] Réservée. Ce paramètre doit avoir la valeur 0.

ppNewInstance
[out] Reçoit le pointeur vers la nouvelle instance de la classe. Si une erreur se produit, aucun nouvel objet n’est retourné, et ppNewInstance n’est pas modifié.

Valeur retournée

Les valeurs suivantes renvoyées par cette fonction sont définies dans le fichier d’en-tête WbemCli.h, ou vous pouvez les définir comme constantes dans votre code :

Constant Valeur Description
WBEM_E_INCOMPLETE_CLASS 0x80041020 ptr n’est pas une définition de classe valide et ne peut pas générer de nouvelles instances. Soit elle est incomplète, soit elle n’a pas été inscrite auprès de Windows Management par un appel à PutClassWmi.
WBEM_E_OUT_OF_MEMORY 0x80041006 La mémoire n'est pas suffisante pour terminer cette opération.
WBEM_E_INVALID_PARAMETER 0x80041008 ppNewClass est null.
WBEM_S_NO_ERROR 0 L’appel de fonction a abouti.

Notes

Cette fonction wrappe un appel à la méthode IWbemClassObject::SpawnInstance.

ptr doit être une définition de classe obtenue à partir de Windows Management. (Notez que la génération d’une instance à partir d’une autre instance est prise en charge, mais que l’instance retournée sera vide.) Vous utilisez ensuite cette définition de classe pour créer de nouvelles instances. Un appel à la fonction PutInstanceWmi est nécessaire si vous prévoyez d’écrire l’instance dans Windows Management.

Le nouvel objet retourné dans ppNewClass devient automatiquement une sous-classe de l’objet actuel. 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.

Spécifications

Plateformes : Consultez Configuration requise.

En-tête : WMINet_Utils.idl

Versions de .NET Framework : disponibles depuis la version 4.7.2

Voir aussi