CFrameworkQuery::GetValuesForProp(LPCWSTR,CHStringArray&) (frquery.h)
[La clase CFrameworkQuery 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 deben usarse para todo el desarrollo nuevo.]
El método GetValuesForProp devuelve todos los valores de una propiedad determinada que ha generado esa propiedad, tal como aparece dentro de la consulta.
Por ejemplo, una llamada a GetValuesForProp(L"Name", sa) devuelve la sa de matriz, que contiene todos los valores de "Name" que requieren que las instancias se devuelvan para satisfacer la consulta. Si sa contiene {"a","b"}, todas las instancias donde "Name=a" y todas las instancias donde "Name=b" se deben devolver para satisfacer completamente la consulta.
Si las restricciones de "Name" no están suficientemente limitadas, se devuelve una matriz sa vacía.
Sintaxis
HRESULT GetValuesForProp(
LPCWSTR wszPropName,
CHStringArray & achNames
);
Parámetros
wszPropName
Matriz de valores para la propiedad especificada por wszPropName.
achNames
Nombre de la propiedad de destino.
Valor devuelto
Este método devuelve WBEM_S_NO_ERROR si se ha realizado correctamente y WBEM_E_FAILED, o cualquier otro código de error HRESULT , en caso de error.
Comentarios
Dado un nombre de propiedad, este método devuelve todos los valores de resultado en un contenedor CHStringArray o vector. El contenedor de vectores contiene _bstr_t objetos que contienen los valores de resultado.
Por ejemplo, en la lista siguiente se enumeran los valores devueltos por GetValuesForProp para una variedad de consultas cuando se llama con wszPropName establecido en "Drive".
Consultar | Valor devuelto | Resultado |
---|---|---|
SELECT * FROMWin32_Directory DÓNDE Drive = "C:" |
WBEM_S_NO_ERROR | C. |
SELECT * FROMWin32_Directory DÓNDE Drive = "C:" OR FileSize = 256 |
WBEM_S_NO_ERROR | Sin resultados; aszNames está vacío. |
SELECT * FROMWin32_Directory DÓNDE Drive = "C:" OR Drive = "D:" |
WBEM_S_NO_ERROR | C:, D: |
SELECT * FROMWin32_Directory DÓNDE Unidad <> "C:" |
WBEM_S_NO_ERROR | Sin resultados; aszNames está vacío. |
SELECT * FROMWin32_Directory |
WBEM_S_NO_ERROR | Sin resultados; aszNames está vacío. |
El método GetValuesForProp solo admite tipos de cadena. Por ejemplo, la siguiente consulta, seguida de una llamada a GetValuesForProp("PropInt", values), devuelve WBEM_E_INVALID_QUERY mientras GetValuesForProp("PropStr", values) devuelve S_OK.
SELECT * FROM Test WHERE PropInt = 32 AND PropStr = "a"
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista |
Servidor mínimo compatible | Windows Server 2008 |
Plataforma de destino | Windows |
Encabezado | frquery.h (include FwCommon.h) |
Library | FrameDyn.lib |
Archivo DLL | FrameDynOS.dll; FrameDyn.dll |