Compartir a través de


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

Consulte también