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 |