Compartir a través de


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

WHEREPath = "\DOS"

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

Consulte también

CFrameworkQuery

Provider::ExecQuery