Función SpawnInstance
Crea una instancia a partir de una clase.
Nota
Esta API es solo para uso interno. No está pensada para usarla desde código del desarrollador.
Sintaxis
HRESULT SpawnInstance (
[in] int vFunc,
[in] IWbemClassObject* ptr,
[in] LONG lFlags,
[out] IWbemClassObject** ppNewInstance);
Parámetros
vFunc
[in] Este parámetro no se usa.
ptr
[in] Puntero a una instancia de IWbemClassObject.
lFlags
[in] Reservado. El valor de este parámetro deberá ser 0.
ppNewInstance
[out] Recibe el puntero a la instancia nueva de la clase. Si se produce un error, no se devuelve un objeto nuevo y ppNewInstance
se deja sin modificar.
Valor devuelto
Los siguientes valores que devuelve esta función se definen en el archivo de encabezado WbemCli.h, aunque también puede definirlos como constantes en el código. Puede consultarlos a continuación:
Constante | Value | Descripción |
---|---|---|
WBEM_E_INCOMPLETE_CLASS |
0x80041020 | ptr no es una definición válida de clase y no puede generar nuevas instancias. Está incompleto o no se ha registrado con la administración de Windows mediante una llamada a PutClassWmi. |
WBEM_E_OUT_OF_MEMORY |
0x80041006 | Memoria insuficiente para completar la operación. |
WBEM_E_INVALID_PARAMETER |
0x80041008 | ppNewClass es null . |
WBEM_S_NO_ERROR |
0 | Si se devuelve este valor, significará que la llamada a la función se realizó correctamente. |
Comentarios
Al usar esta función, se ajusta una llamada al método IWbemClassObject::SpawnInstance.
ptr
debe ser una definición de clase obtenida de administración de Windows. (Tenga en cuenta que se admite la creación de una instancia desde una instancia, pero la instancia devuelta está vacía). A continuación, use esta definición de clase para crear instancias. Se requiere una llamada a la función PutInstanceWmi si tiene previsto escribir la instancia en administración de Windows.
El objeto nuevo devuelto en ppNewClass
se convierte automáticamente en una subclase del objeto actual. Este comportamiento no se puede invalidar. No hay ningún otro método con el que se puedan crear subclases (clases derivadas).
Requisitos
Plataformas: Vea Requisitos de sistema.
Encabezado: WMINet_Utils.idl
Versiones de .NET Framework: está disponible desde la versión 4.7.2