PSCreateAdapterFromPropertyStore 함수(propsys.h)
IPropertyStore에서 어댑터를 만듭니다.
구문
PSSTDAPI PSCreateAdapterFromPropertyStore(
[in] IPropertyStore *pps,
[in] REFIID riid,
[out] void **ppv
);
매개 변수
[in] pps
형식: IPropertyStore*
속성 저장소를 나타내는 IPropertyStore 개체에 대한 포인터입니다.
[in] riid
형식: REFIID
IID에 대한 참조입니다.
[out] ppv
형식: void**
이 함수가 반환되면 는 riid에서 요청된 인터페이스 포인터를 포함합니다.
반환 값
형식: HRESULT
이 함수가 성공하면 S_OK 반환합니다. 그러지 않으면 HRESULT 오류 코드를 반환합니다.
설명
어댑터 개체는 IPropertySetStorage, IPropertyStore, IPropertyStoreCapabilities 및 IObjectProvider를 구현합니다.
IPropertySetStorage 인터페이스가 필요한 API를 사용하여 IPropertyStore를 구현하는 개체가 필요한 경우 이 함수를 사용합니다. 만든 개체는 IPropertySetStorage를 사용하여 네임스페이스 항목에 바인딩을 지원하려는 네임스페이스 확장에도 유용할 수 있습니다. 애플리케이션은 한 번에 하나의 스레드에서만 이 개체를 호출해야 합니다.
이 함수에서 만든 어댑터 속성 저장소는 원본 IPropertyStore 인터페이스에 대한 참조를 유지합니다. 따라서 호출 애플리케이션은 이 함수를 호출한 후 편리할 때마다 원본 IPropertyStore 에 대한 참조를 자유롭게 해제할 수 있습니다.
어댑터 속성 저장소는 IPropertyStore 인터페이스의 메서드를 적절하게 호출합니다. 따라서 호출하는 애플리케이션이 저장소에 값을 쓰는 경우 인터페이스 중 하나에서만 IPropertyStore::Commit 메서드를 호출해야 합니다.
예제
더 큰 프로그램의 일부로 포함할 다음 예제에서는 PSCreateAdapterFromPropertyStore 를 사용하여 어댑터 속성 저장소를 사용하여 IPropertyStore 인터페이스를 IPropertySetStorage 인터페이스로 변환하는 방법을 보여 줍니다.
// IPropertyStore *ppropstore;
// Assume variable ppropstore is initialized and valid
IPropertySetStorage *pSetStorage;
HRESULT hr = PSCreateadapterFromPropertyStore(ppropstore, IID_PPV_ARGS(&pSetStorage));
if (SUCCEEDED(hr))
{
// pSetStorage is now valid and can be used to access the data in ppropstore.
pSetStorage->Release();
}
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | WINDOWS XP SP2, Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | WINDOWS Server 2003 SP1 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | propsys.h |
라이브러리 | Propsys.lib |
DLL | Propsys.dll(버전 6.0 이상) |
재배포 가능 파일 | WDS(Windows 데스크톱 검색) 3.0 |