다음을 통해 공유


ITDispatchMapper::QueryDispatchInterface 메서드(tapi3if.h)

QueryDispatchInterface 메서드는 해당 GUID 및 개체에 있는 다른 인터페이스의 디스패치 포인터가 지정된 경우 개체의 다른 인터페이스에 대한 디스패치 포인터를 반환합니다.

구문

HRESULT QueryDispatchInterface(
  [in]  BSTR      pIID,
  [in]  IDispatch *pInterfaceToMap,
  [out] IDispatch **ppReturnedInterface
);

매개 변수

[in] pIID

필요한 인터페이스에 대한 GUID의 BSTR 표현에 대한 포인터입니다.

[in] pInterfaceToMap

시작 인터페이스의 IDispatch 포인터입니다.

[out] ppReturnedInterface

pIID에 포함된 GUID에 해당하는 인터페이스의 IDispatch 포인터입니다.

반환 값

이 메서드는 이러한 값 중 하나를 반환할 수 있습니다.

반환 코드 Description
S_OK
메서드가 정상적으로 실행되었습니다.
E_OUTOFMEMORY
작업을 수행하기 위한 메모리가 부족합니다.
E_INVALIDARG
pIID 매개 변수는 유효한 BSTR이 아니거나 유효한 GUID로 변환되지 않습니다.
E_NOINTERFACE
요청된 인터페이스가 노출되지 않거나 개체가 IObjectSafety 인터페이스를 구현하지 않습니다.

설명

애플리케이션은 SysAllocString을 사용하여 pIID 매개 변수에 대한 메모리를 할당하고 SysFreeString을 사용하여 변수가 더 이상 필요하지 않을 때 메모리를 해제해야 합니다.

디스패치 매퍼는 개체의 IObjectSafety 인터페이스를 사용하여 개체가 요청된 인터페이스에서 스크립팅하는 데 안전한지 확인합니다. 개체가 IObjectSafety를 구현하지 않거나 개체가 이 특정 인터페이스에서 안전하지 않은 경우 호출이 실패합니다.

요구 사항

요구 사항
대상 플랫폼 Windows
헤더 tapi3if.h(Tapi3.h 포함)
라이브러리 Uuid.lib
DLL Tapi3.dll

추가 정보

ITDispatchMapper