Compartilhar via


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

[A classe Provider faz parte do WMI Provider Framework que agora é considerado em estado final e nenhum desenvolvimento, melhoria ou atualização adicional estará disponível para problemas não relacionados à segurança que afetarem essas bibliotecas. As APIs de MI devem ser usadas para todos os novos desenvolvimentos.]

O método GetObject é chamado pelo WMI para recuperar uma instância de uma classe.

Sintaxe

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

Parâmetros

pInstance

TBD

[ref] lFlags

Objeto de consulta que indica o conjunto de propriedades a serem populadas, conforme solicitado por uma chamada para Provider::GetObject.

Um provedor pode obter um ganho de desempenho significativo preenchendo apenas esses valores de propriedade solicitados. O provedor determina quais propriedades são solicitadas usando CFrameworkQuery::IsPropertyRequired. Caso contrário, o provedor deve preencher todos os valores de propriedade.

Query

TBD

Retornar valor

A implementação do provedor de estrutura padrão desse método retorna WBEM_E_PROVIDER_NOT_CAPABLE ao método de chamada. O método IWbemServices::GetObject lista os valores retornados comuns, embora você possa optar por implementar qualquer valor retornado COM.

Comentários

O WMI geralmente invoca GetObject em resposta a uma chamada de cliente para IWbemServices::GetObject. A versão WMI de Provider::GetObject fornece uma instância com apenas as propriedades de chave preenchidas. Por outro lado, um provedor de estrutura implementado deve preencher todas as outras propriedades. O seguinte descreve uma substituição comum de GetObject:

  1. Determine qual instância WMI solicitou lendo as propriedades de chave com um método Get de CInstance, como CInstance::GetCHString.
  2. Preencha o restante das propriedades da instância usando os vários métodos Set da classe CInstance , como CInstance::SetByte ou CInstance::SetStringArray.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista
Servidor mínimo com suporte Windows Server 2008
Plataforma de Destino Windows
Cabeçalho provider.h (inclua FwCommon.h)
Biblioteca FrameDyn.lib
DLL FrameDynOS.dll; FrameDyn.dll