Método IWbemClassObject::SpawnDerivedClass (wbemcli.h)

Use el método IWbemClassObject::SpawnDerivedClass para crear un objeto de clase recién derivado del objeto actual. El objeto actual debe ser una definición de clase que se convierte en la clase primaria del objeto generado. El objeto devuelto se convierte en una subclase del objeto actual.

Sintaxis

HRESULT SpawnDerivedClass(
  [in]  long             lFlags,
  [out] IWbemClassObject **ppNewClass
);

Parámetros

[in] lFlags

Reservado. El valor de este parámetro deberá ser 0.

[out] ppNewClass

No puede ser NULL. Esto recibe el puntero al nuevo objeto de definición de clase. El autor de la llamada debe invocar IWbemClassObject::Release cuando el objeto ya no es necesario, normalmente después de haber invocado IWbemServices::P utClass para escribir la definición de clase. Si se produce un error, no se devuelve un nuevo objeto y ppNewClass no se modifica.

Valor devuelto

Este método devuelve un valor HRESULT que indica el estado de la llamada al método. En la lista siguiente se muestra el valor contenido en un HRESULT. Para obtener valores HRESULT generales, consulte Códigos de error del sistema.

Comentarios

El nuevo objeto 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).

No se puede crear una clase derivada de una clase que sea local para su propio proceso de cliente. La clase primaria (clase base) se debe crear y registrar con administración de Windows mediante IWbemServices::P utClass y, a continuación, recuperarse mediante IWbemServices::GetObject para poder usar este método para crear una clase derivada.

Para crear una jerarquía de clases, debe crear la clase inicial con IWbemServices::P utClass, recuperarla mediante IWbemServices::GetObject y usar el objeto recuperado para crear la clase recién derivada. A continuación, esta clase recién derivada debe crearse con IWbemServices::P utClass. Para crear otras clases derivadas, debe llamar a IWbemServices::GetObject y, a continuación, llamar a IWbemClassObject::SpawnDerivedClass, etc., en un ciclo para cada nuevo nivel de derivación. Debe seguir este procedimiento para evitar errores de versión y conflictos de simultaneidad. Para obtener más información sobre cómo crear una clase sin elemento primario, vea Crear una clase.

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista
Servidor mínimo compatible Windows Server 2008
Plataforma de destino Windows
Encabezado wbemcli.h (include Wbemidl.h)
Library WbemUuid.lib
Archivo DLL CIMWin32.dll; Esscli.dll; Fastprox.dll; FrameDyn.dll; FrameDynOS.dll; Krnlprov.dll; Ncprov.dll; Wbemcore.dll; Wbemess.dll; Wmipiprt.dll

Consulte también

IWbemClassObject

IWbemServices::GetObject

IWbemServices::PutClass