Compartir a través de


Método Provider::GetObject(CInstance*,long,CFrameworkQuery&) (provider.h)

[La clase Provider forma parte del marco del proveedor de WMI que ahora se considera en estado final y no habrá más desarrollo, mejoras o actualizaciones disponibles para problemas no relacionados con la seguridad que afecten a estas bibliotecas. Las API de MI se deben usar para todo el nuevo desarrollo.]

WMI llama al método GetObject para recuperar una instancia de una clase.

Sintaxis

HRESULT GetObject(
        CInstance         *pInstance,
  [ref] long              lFlags,
        CFrameworkQuery & Query
);

Parámetros

pInstance

TBD

[ref] lFlags

Objeto de consulta que indica el conjunto de propiedades que se va a rellenar, según lo solicitado por una llamada a Provider::GetObject.

Un proveedor puede obtener una mejora significativa del rendimiento rellenando solo estos valores de propiedad solicitados. El proveedor determina qué propiedades se solicitan mediante CFrameworkQuery::IsPropertyRequired. De lo contrario, el proveedor debe rellenar todos los valores de propiedad.

Query

TBD

Valor devuelto

La implementación predeterminada del proveedor del marco de trabajo de este método devuelve WBEM_E_PROVIDER_NOT_CAPABLE al método que realiza la llamada. El método IWbemServices::GetObject enumera los valores devueltos comunes, aunque puede optar por implementar cualquier valor devuelto COM.

Comentarios

WMI suele invocar GetObject en respuesta a una llamada de cliente a IWbemServices::GetObject. La versión WMI de Provider::GetObject proporciona una instancia con solo las propiedades de clave rellenadas. Por el contrario, un proveedor de marcos implementado debe rellenar todas las demás propiedades. A continuación se describe una invalidación común de GetObject:

  1. Determine qué instancia de WMI solicitó leyendo las propiedades de clave con un método Get de CInstance, como CInstance::GetCHString.
  2. Rellene el resto de las propiedades de la instancia mediante los muchos métodos Set de la clase CInstance , como CInstance::SetByte o CInstance::SetStringArray.

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista
Servidor mínimo compatible Windows Server 2008
Plataforma de destino Windows
Encabezado provider.h (include FwCommon.h)
Library FrameDyn.lib
Archivo DLL FrameDynOS.dll; FrameDyn.dll