Método Provider::GetObject(ParsedObjectPath*,MethodContext*,long) (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(
ParsedObjectPath *pParsedObjectPath,
MethodContext *pContext,
[ref] long lFlags
);
Parâmetros
pParsedObjectPath
Ponteiro para um objeto CInstance a ser preenchido pelo provedor de estrutura.
pContext
Máscara de bits de sinalizadores com informações sobre a operação GetObject . Esse é o valor especificado pelo cliente no método IWbemServices::GetObject .
Os seguintes sinalizadores são manipulados por (e filtrados) pelo WMI:
- WBEM_FLAG_USE_AMENDED_QUALIFIERS
- WBEM_FLAG_RETURN_WBEM_COMPLETE
- WBEM_FLAG_RETURN_IMMEDIATELY
[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 deverá preencher todos os valores de propriedade.
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 de retorno 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:
- Determine qual instância WMI solicitou lendo as propriedades de chave com um método Get de CInstance, como CInstance::GetCHString.
- 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 |