BindMoniker 함수(objbase.h)
모니커를 사용하여 개체를 찾고, 비활성 상태인 경우 개체를 활성화하고, 해당 개체의 지정된 인터페이스에 대한 포인터를 검색합니다.
구문
HRESULT BindMoniker(
[in] LPMONIKER pmk,
[in] DWORD grfOpt,
[in] REFIID iidResult,
[out] LPVOID *ppvResult
);
매개 변수
[in] pmk
개체의 모니커에 대한 포인터입니다. IMoniker를 참조하세요.
[in] grfOpt
이 매개 변수는 나중에 사용하도록 예약되어 있으며 0이어야 합니다.
[in] iidResult
개체와 통신하는 데 사용할 인터페이스 식별자입니다.
[out] ppvResult
iidResult에서 요청된 인터페이스 포인터를 수신하는 포인터 변수의 주소입니다. 반환이 성공하면 *ppvResult 에 요청된 인터페이스 포인터가 포함됩니다. 오류가 발생하면 *ppvResult 는 NULL입니다. 호출이 성공하면 호출자는 개체의 IUnknown::Release 메서드를 호출하여 포인터를 해제해야 합니다.
반환 값
이 함수는 다음 오류 코드 또는 IMoniker::BindToObject 메서드에서 반환된 오류 값을 반환할 수 있습니다.
반환 코드 | Description |
---|---|
|
필요한 경우 개체를 찾아 활성화했으며 요청된 인터페이스에 대한 포인터가 반환되었습니다. |
|
식별된 모니커 개체를 찾을 수 없습니다. |
설명
BindMoniker 는 개체의 모니커가 있는 클라이언트가 해당 개체의 인터페이스 중 하나에 대한 포인터를 가져오는 편리한 방법으로 제공되는 도우미 함수입니다. BindMoniker는 다음 호출을 패키지합니다.
CreateBindCtx(0, &pbc);
pmk->BindToObject(pbc, NULL, riid, ppvObj);
CreateBindCtx 는 IBindContext의 시스템 구현을 지원하는 바인딩 컨텍스트 개체를 만듭니다. pmk 매개 변수는 실제로 모니커 개체의 IMoniker 구현에 대한 포인터입니다. 이 구현의 BindToObject 메서드는 요청된 인터페이스 포인터에 대한 포인터를 제공합니다.
빠른 연속으로 바인딩할 모니커가 여러 개 있고 해당 모니커가 동일한 개체를 활성화한다는 것을 알고 있는 경우 IMoniker::BindToObject 메서드를 직접 호출하는 것이 더 효율적일 수 있으며, 이를 통해 모든 모니커에 동일한 바인딩 컨텍스트 개체를 사용할 수 있습니다. 자세한 내용은 IBindCtx 인터페이스를 참조하세요.
문서에 연결된 개체를 포함하도록 허용하는 컨테이너 애플리케이션은 일반적으로 IMoniker 메서드를 직접 호출하지 않는 특수 클라이언트입니다. 대신 클라이언트는 IOleLink 인터페이스를 통해 연결된 개체를 조작합니다. 기본 처리기는 이 인터페이스를 구현하고 필요에 따라 적절한 IMoniker 메서드를 호출합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 Professional [데스크톱 앱 | UWP 앱] |
지원되는 최소 서버 | Windows 2000 Server [데스크톱 앱 | UWP 앱] |
대상 플랫폼 | Windows |
헤더 | objbase.h |
라이브러리 | Ole32.lib |
DLL | Ole32.dll |
API 세트 | ext-ms-win-com-ole32-l1-1-5(Windows 10 버전 10.0.15063에 도입됨) |