AtlInternalQueryInterface

요청 된 인터페이스에 대 한 포인터를 검색합니다.

HRESULT AtlInternalQueryInterface(
   void* pThis,
   const _ATL_INTMAP_ENTRY* pEntries,
   REFIID iid,
   void** ppvObject 
);

매개 변수

  • pThis
    [in] COM 노출 인터페이스 맵을 포함 된 개체에 대 한 포인터 QueryInterface.

  • pEntries
    [in] 배열을 _ATL_INTMAP_ENTRY 맵을 사용할 수 있는 인터페이스에 액세스 하는 구조입니다.

  • iid
    [in] 요청 된 인터페이스의 GUID입니다.

  • ppvObject
    [out] 지정 된 인터페이스 포인터에 대 한 포인터 iid, 또는 NULL 인터페이스를 찾을 수 없는 경우.

반환 값

HRESULT 값 중 하나입니다.

설명

AtlInternalQueryInterface인터페이스를 COM 맵 테이블에만 처리합니다.개체를 집계 하는 경우 AtlInternalQueryInterface 를 알 수 없는 외부 위임 하지 않습니다.COM 맵 테이블 매크로와 인터페이스를 입력할 수 있습니다 COM_INTERFACE_ENTRY 또는 그 변종 중 하나입니다.

예제

// MyTimerProc is a callback function passed to SetTimer()
VOID CALLBACK MyTimerProc(HWND /*hwnd*/, UINT /*uMsg*/, UINT /*idEvent*/, 
   DWORD /*dwTime*/)
{
   LPDISPATCH pDisp = NULL;
   // gpMyCtrl is a global variable of type CMyCtrl*
   // _GetEntries() is a static function you get with BEGIN_COM_MAP()
   AtlInternalQueryInterface (gpMyCtrl, CMyCtrl::_GetEntries(), IID_IDispatch, 
      (LPVOID*)&pDisp);
   //...
   pDisp->Release ();
}

요구 사항

헤더: atlbase.h

참고 항목

참조

CComObjectRootEx::InternalAddRef

CComObjectRootEx::InternalRelease

기타 리소스

COM 맵 전역 함수