Compartir a través de


Método CFrameworkQuery::GetValuesForProp(LPCWSTR,std.vector<_bstr_t>&) (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,
  std::vector<_bstr_t>& vectorNames
);

Parámetros

wszPropName

Nombre de la propiedad de destino.

vectorNames

Matriz de valores para la propiedad especificada por wszPropName.

Valor devuelto

Este método devuelve WBEM_S_NO_ERROR si se ejecuta 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 a con wszPropName establecido en "Drive".

Consultar Valor devuelto Resultado
SELECT * FROM Win32_Directory

UNIDAD WHERE = "C:"

WBEM_S_NO_ERROR C.
SELECT * FROM Win32_Directory

UNIDAD WHERE = "C:" OR FileSize = 256

WBEM_S_NO_ERROR Sin resultados; aszNames está vacío.
SELECT * FROM Win32_Directory

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

WBEM_S_NO_ERROR C:, D:
SELECT * FROM Win32_Directory

<> UNIDAD WHERE "C:"

WBEM_S_NO_ERROR Sin resultados; aszNames está vacío.
SELECT * FROM Win32_Directory

WHERE Path = "\DOS"

WBEM_S_NO_ERROR Sin resultados; aszNames está vacío.
 

El método GetValuesForProp solo admite tipos de cadena.

La consulta siguiente, seguida de una llamada a GetValuesForProp("PropInt", values), devuelve WBEM_E_INVALID_QUERY mientras que GetValuesForProp("PropStr", values) devuelve S_OK.

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

Requisitos

   
Cliente mínimo compatible Windows Vista
Servidor mínimo compatible Windows Server 2008
Plataforma de destino Windows
Encabezado frquery.h (incluya FwCommon.h)
Library FrameDyn.lib
Archivo DLL FrameDynOS.dll; FrameDyn.dll

Consulte también

CFrameworkQuery

Provider::ExecQuery