IShellItemArray::GetPropertyStore 메서드(shobjidl_core.h)
속성 저장소를 가져옵니다.
구문
HRESULT GetPropertyStore(
[in] GETPROPERTYSTOREFLAGS flags,
[in] REFIID riid,
[out] void **ppv
);
매개 변수
[in] flags
GETPROPERTYSTOREFLAGS 상수 중 하나입니다.
[in] riid
형식: REFIID
검색할 개체 형식의 IID입니다.
[out] ppv
형식: void**
이 메서드가 반환되면 riid에서 요청된 인터페이스 포인터가 포함됩니다. 일반적으로 IPropertyStore 또는 IPropertyStoreCapabilities입니다.
반환 값
형식: HRESULT
메서드가 성공하면 S_OK를 반환하고, 그러지 않으면 HRESULT 오류 코드를 반환합니다.
설명
이 메서드는 셸 항목 배열의 모든 항목에서 수집된 속성을 집계하는 읽기 전용 속성 저장소를 가져오는 데 사용됩니다.
셸 항목 배열에 둘 이상의 항목이 있는 경우 결과 속성 저장소는 각 속성에 의해 결정된 규칙 집합에 따라 각 항목의 값을 집계합니다. 속성 저장소에서 읽은 값은 CoerceToCanonicalValue에서 설명한 대로 집계 전에 정식 형식으로 강제 변환됩니다. IPropertyStore::GetValue 호출의 출력은 다음과 같이 계산됩니다.
- 단일 값 속성은 속성 설명 스키마의 집계 형식 문자열에 지정된 규칙을 따릅니다.
-
- 집계 형식이 "DateRange"이고 속성 형식이 filetime이면 VT_VECTOR | 두 값의 VT_FILETIME 또는 값이 동일한 경우 VT_FILETIME 값입니다.
- 집계 형식이 "First"이면 비어 있지 않은 첫 번째 값을 반환합니다.
- 집계 형식이 "Sum"이면 합계를 반환합니다.
- 집계 형식이 "Average"이면 비어 있지 않은 모든 값의 평균을 반환합니다.
- 집계 형식이 "Minimum"이면 최소값을 반환합니다.
- 집계 형식이 "Union"이고 속성 형식이 문자열이면 VT_VECTOR | 값의 합을 포함하는 VT_LPWSTR. 값의 순서는 지정되지 않습니다.
- 집계 형식이 지정되지 않거나 호환되지 않거나 "Default"인 경우 배열의 모든 항목에 대해 동일한 경우 단일 값을 반환하거나 일부 항목 간에 값이 다르다는 것을 나타내는 데 사용되는 특수 값을 반환합니다. 특수 값은 VT_VECTOR | "다중" 및 "값"의 두 문자열을 포함하는 VT_LPWSTR. 호출 애플리케이션은 VT_VECTOR 확인하여 이 특수 값에 대해 검사 합니다. | GetTypeFlags가 속성이 단일 값임을 나타내는 경우 VT_LPWSTR.
- 다중값 문자열 속성은 해당 문자열의 교집합을 반환합니다. 순서가 지정되지 않았습니다.
호출 애플리케이션은 개별 셸 항목 및 해당 속성 저장소에 직접 액세스하여 다른 집계 동작을 수행할 수 있습니다. IPropertyStore::GetCount, IPropertyStore::GetAt 및 GetPropertyStore를 참조하세요.
셸 항목 배열에 대한 쓰기는 IFileOperation API를 통해 지원됩니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | shobjidl_core.h(Shobjidl.h 포함) |