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