다음을 통해 공유


CFrameworkQuery::GetValuesForProp(LPCWSTR,std.vector<_bstr_t>&) 메서드(frquery.h)

[CFrameworkQuery 클래스는 WMI 공급자 프레임워크의 일부이며 현재 최종 상태로 간주됩니다. 이 라이브러리에 영향을 미치는 보안과 관련되지 않은 문제에 대해서는 더 이상 개발, 개선 또는 업데이트가 이루어지지 않습니다. 모든 새로운 개발에서는 MI API를 사용해야 합니다.]

GetValuesForProp 메서드는 쿼리 내에 나타날 때 해당 속성에 의해 생성된 특정 속성에 대한 모든 값을 반환합니다.

예를 들어 GetValuesForProp(L"Name", sa)에 대한 호출은 sa 배열을 반환합니다. 여기에는 쿼리를 만족시키기 위해 인스턴스를 다시 보내야 하는 "이름"의 모든 값이 포함됩니다. sa에 {"a","b"}가 포함된 경우 "Name=a"인 모든 인스턴스와 "Name=b"인 모든 인스턴스를 다시 보내야 쿼리를 완전히 충족할 수 있습니다.

"이름"에 대한 제약 조건이 충분히 제한되지 않으면 빈 sa 배열이 반환됩니다.

구문

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

매개 변수

wszPropName

대상 속성의 이름입니다.

vectorNames

wszPropName으로 지정된 속성의 값 배열입니다.

반환 값

이 메서드는 성공 시 WBEM_S_NO_ERROR 반환하고 실패 시 WBEM_E_FAILED 또는 다른 HRESULT 오류 코드를 반환합니다.

설명

속성 이름을 지정하면 이 메서드는 CHStringArray 또는 벡터 컨테이너의 모든 결과 값을 반환합니다. 벡터 컨테이너에는 결과 값이 포함된 _bstr_t 개체가 있습니다.

예를 들어 다음 목록에는 wszPropName이 "드라이브"로 설정된 상태에서 호출될 때 다양한 쿼리에 대해 GetValuesForProp에서 반환되는 값이 나열됩니다.

쿼리 반환 값 결과
SELECT * FROM Win32_Directory

WHERE 드라이브 = "C:"

WBEM_S_NO_ERROR C:
SELECT * FROM Win32_Directory

WHERE Drive = "C:" OR FileSize = 256

WBEM_S_NO_ERROR 결과가 없습니다. aszNames 가 비어 있습니다.
SELECT * FROM Win32_Directory

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

WBEM_S_NO_ERROR C:, D:
SELECT * FROM Win32_Directory

WHERE 드라이브 <> "C:"

WBEM_S_NO_ERROR 결과가 없습니다. aszNames 가 비어 있습니다.
SELECT * FROM Win32_Directory

WHERE Path = "\DOS"

WBEM_S_NO_ERROR 결과가 없습니다. aszNames 가 비어 있습니다.
 

GetValuesForProp 메서드는 문자열 형식만 지원합니다.

다음 쿼리와 GetValuesForProp("PropInt", values)에 대한 호출은 WBEM_E_INVALID_QUERY 반환하고 GetValuesForProp("PropStr", values)은 S_OK 반환합니다.

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

요구 사항

   
지원되는 최소 클라이언트 Windows Vista
지원되는 최소 서버 Windows Server 2008
대상 플랫폼 Windows
헤더 frquery.h(FwCommon.h 포함)
라이브러리 FrameDyn.lib
DLL FrameDynOS.dll; FrameDyn.dll

추가 정보

CFrameworkQuery

Provider::ExecQuery