Compartilhar via


Método CFrameworkQuery::GetValuesForProp(LPCWSTR,std.vector<_bstr_t>&) (frquery.h)

[A classe CFrameworkQuery 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 em todos os novos desenvolvimentos.]

O método GetValuesForProp retorna todos os valores de uma propriedade específica que são gerados por essa propriedade conforme ela aparece na consulta.

Por exemplo, uma chamada para GetValuesForProp(L"Name", sa) retorna a matriz sa, que contém todos os valores de "Name" que exigem que as instâncias sejam enviadas de volta para atender à consulta. Se sa contiver {"a", "b"}, todas as instâncias em que "Name=a" e todas as instâncias em que "Name=b" devem ser enviadas de volta para satisfazer completamente a consulta.

Se as restrições em "Name" não forem suficientemente limitadas, uma matriz sa vazia será retornada.

Sintaxe

HRESULT GetValuesForProp(
  LPCWSTR               wszPropName,
  std::vector<_bstr_t>& vectorNames
);

Parâmetros

wszPropName

Nome da propriedade de destino.

vectorNames

Matriz de valores para a propriedade especificada por wszPropName.

Retornar valor

Esse método retorna WBEM_S_NO_ERROR com êxito e WBEM_E_FAILED, ou qualquer outro código de erro HRESULT , em caso de falha.

Comentários

Dado um nome de propriedade, esse método retorna todos os valores de resultado em um contêiner CHStringArray ou vector. O contêiner de vetor contém _bstr_t objetos que contêm os valores de resultado.

Por exemplo, a lista a seguir lista os valores que seriam retornados por GetValuesForProp para uma variedade de consultas quando chamado com wszPropName definido como "Drive".

Consulta Retornar valor Result
SELECT * FROM Win32_Directory

WHERE Drive = "C:"

WBEM_S_NO_ERROR C:
SELECT * FROM Win32_Directory

WHERE Drive = "C:" OR FileSize = 256

WBEM_S_NO_ERROR Sem resultados; aszNames está vazio.
SELECT * FROM Win32_Directory

WHERE Drive = "C:" OR Drive = "D:"

WBEM_S_NO_ERROR C:, D:
SELECT * FROM Win32_Directory

WHERE Drive <> "C:"

WBEM_S_NO_ERROR Sem resultados; aszNames está vazio.
SELECT * FROM Win32_Directory

CAMINHO WHERE = "\DOS"

WBEM_S_NO_ERROR Sem resultados; aszNames está vazio.
 

O método GetValuesForProp só dá suporte a tipos de cadeia de caracteres.

A consulta a seguir, seguida por uma chamada para GetValuesForProp("PropInt", valores), retorna WBEM_E_INVALID_QUERY enquanto GetValuesForProp("PropStr", valores) retorna S_OK.

SELECT * FROM Test WHERE PropInt = 32 AND PropStr = "a"

Requisitos

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

Confira também

CFrameworkQuery

Provider::ExecQuery