IAtlMemMgr 클래스

참고 항목

ATL(활성 템플릿 라이브러리)은 계속 지원됩니다. 그러나 더 이상 기능을 추가하거나 설명서를 업데이트하지 않습니다.

이 클래스는 메모리 관리자에 대한 인터페이스를 나타냅니다.

구문

__interface __declspec(uuid("654F7EF5-CFDF-4df9-A450-6C6A13C622C0")) IAtlMemMgr

멤버

메서드

속성 설명
할당하다 메모리 블록을 할당하려면 이 메서드를 호출합니다.
무료 메모리 블록을 해제하려면 이 메서드를 호출합니다.
GetSize 할당된 메모리 블록의 크기를 검색하려면 이 메서드를 호출합니다.
재할당 메모리 블록을 다시 할당하려면 이 메서드를 호출합니다.

설명

이 인터페이스는 CComHeap, CCRTHeap, CLocalHeap, CGlobalHeap 또는 CWin32Heap에 의해 구현됩니다.

참고 항목

로컬 및 전역 힙 함수는 다른 메모리 관리 함수보다 느리며 많은 기능을 제공하지 않습니다. 따라서 새 애플리케이션은 힙 함수를 사용해야 합니다. CWin32Heap 클래스에서 사용할 수 있습니다.

예시

// Demonstrate IAtlMemMgr using the five possible
// memory function implementation classes. 

HRESULT MemoryManagerDemonstration(IAtlMemMgr& MemoryManager) throw()
{
   // The IAtlMemMgr interface guarantees not to throw exceptions
   // so we can make the same guarantee for this function
   // without adding exception handling code.

   // A variable which will point to some allocated memory.
   void* pMemory = NULL;

   const size_t BytesInChunk = 1024;

   // Allocate a chunk of memory
   pMemory = MemoryManager.Allocate(BytesInChunk);

   // Confirm the validity of the allocated memory
   if (pMemory == NULL)
      return E_OUTOFMEMORY;

   // Confirm the size of the allocated memory
   ATLASSERT(MemoryManager.GetSize(pMemory) == BytesInChunk);

   // Increase the size of the allocated memory
   pMemory = MemoryManager.Reallocate(pMemory, BytesInChunk * 2);

   // Confirm the validity of the allocated memory
   if (pMemory == NULL)
      return E_OUTOFMEMORY;

   // Confirm the size of the reallocated  memory
   ATLASSERT(MemoryManager.GetSize(pMemory) == BytesInChunk * 2);

   // Free the allocated memory
   MemoryManager.Free(pMemory);

   return S_OK;
}

int DoMemoryManagerDemonstration()
{
   CComHeap heapCom;
   CCRTHeap heapCrt;
   CLocalHeap heapLocal;
   CGlobalHeap heapGlobal;
   // It is necessary to provide extra information 
   // to the constructor when using CWin32Heap
   CWin32Heap heapWin32(NULL, 4096); 

   ATLASSERT(S_OK==MemoryManagerDemonstration(heapCom));
   ATLASSERT(S_OK==MemoryManagerDemonstration(heapCrt));
   ATLASSERT(S_OK==MemoryManagerDemonstration(heapLocal));
   ATLASSERT(S_OK==MemoryManagerDemonstration(heapGlobal));
   ATLASSERT(S_OK==MemoryManagerDemonstration(heapWin32));

   return 0;
}

요구 사항

헤더: atlmem.h

IAtlMemMgr::Allocate

메모리 블록을 할당하려면 이 메서드를 호출합니다.

void* Allocate(size_t nBytes) throw();

매개 변수

nBytes
새 메모리 블록의 요청된 바이트 수입니다.

반환 값

새로 할당된 메모리 블록의 시작 부분에 대한 포인터를 반환합니다.

설명

IAtlMemMgr::Free 또는 IAtlMemMgr::Reallocate를 호출하여 이 메서드에서 할당한 메모리를 해제합니다.

예시

예를 들어 IAtlMemMgr 개요를 참조 하세요.

IAtlMemMgr::Free

메모리 블록을 해제하려면 이 메서드를 호출합니다.

void Free(void* p) throw();

매개 변수

p
이 메모리 관리자에 의해 이전에 할당된 메모리에 대한 포인터입니다.

설명

IAtlMemMgr::Allocate 또는 IAtlMemMgr::Reallocate에서 얻은 메모리를 해제하려면 이 메서드를 사용합니다.

예시

예를 들어 IAtlMemMgr 개요를 참조 하세요.

IAtlMemMgr::GetSize

할당된 메모리 블록의 크기를 검색하려면 이 메서드를 호출합니다.

size_t GetSize(void* p) throw();

매개 변수

p
이 메모리 관리자에 의해 이전에 할당된 메모리에 대한 포인터입니다.

반환 값

메모리 블록의 크기를 바이트 단위로 반환합니다.

예시

예를 들어 IAtlMemMgr 개요를 참조 하세요.

IAtlMemMgr::Reallocate

이 메모리 관리자에 의해 할당된 메모리를 다시 할당하려면 이 메서드를 호출합니다.

void* Reallocate(void* p, size_t nBytes) throw();

매개 변수

p
이 메모리 관리자에 의해 이전에 할당된 메모리에 대한 포인터입니다.

nBytes
새 메모리 블록의 요청된 바이트 수입니다.

반환 값

새로 할당된 메모리 블록의 시작 부분에 대한 포인터를 반환합니다.

설명

IAtlMemMgr::Free 또는 IAtlMemMgr::Reallocate를 호출하여 이 메서드에서 할당한 메모리를 해제합니다.

개념적으로 이 메서드는 기존 메모리를 해제하고 새 메모리 블록을 할당합니다. 실제로 기존 메모리는 확장되거나 재사용될 수 있습니다.

예시

예를 들어 IAtlMemMgr 개요를 참조 하세요.

IAxWinAmbientDispatch::get_AllowContextMenu

이 속성은 AllowContextMenu 호스트된 컨트롤이 자체 상황에 맞는 메뉴를 표시할 수 있는지 여부를 지정합니다.

STDMETHOD(get_AllowContextMenu)(VARIANT_BOOL* pbAllowContextMenu);

매개 변수

pbAllowContextMenu
[out] 이 속성의 현재 값을 받을 변수의 주소입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 이 속성의 기본값으로 VARIANT_TRUE 사용합니다.

IAxWinAmbientDispatch::get_AllowShowUI

이 속성은 AllowShowUI 호스트된 컨트롤이 자체 사용자 인터페이스를 표시할 수 있는지 여부를 지정합니다.

STDMETHOD(get_AllowShowUI)(VARIANT_BOOL* pbAllowShowUI);

매개 변수

pbAllowShowUI
[out] 이 속성의 현재 값을 받을 변수의 주소입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 이 속성의 기본값으로 VARIANT_FALSE 사용합니다.

IAxWinAmbientDispatch::get_AllowWindowlessActivation

이 속성은 AllowWindowlessActivation 컨테이너가 창 없는 활성화를 허용할지 여부를 지정합니다.

STDMETHOD(get_AllowWindowlessActivation)(VARIANT_BOOL* pbAllowWindowless);

매개 변수

pbAllowWindowless
[out] 이 속성의 현재 값을 받을 변수의 주소입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 이 속성의 기본값으로 VARIANT_TRUE 사용합니다.

IAxWinAmbientDispatch::get_BackColor

이 속성은 BackColor 컨테이너의 앰비언트 배경색을 지정합니다.

STDMETHOD(get_BackColor)(OLE_COLOR* pclrBackground);

매개 변수

pclrBackground
[out] 이 속성의 현재 값을 받을 변수의 주소입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 COLOR_BTNFACE 또는 COLOR_WINDOW 이 속성의 기본값으로 사용합니다(호스트 창의 부모가 대화 상자인지 여부에 따라 다름).

IAxWinAmbientDispatch::get_DisplayAsDefault

DisplayAsDefault 는 컨트롤이 기본 컨트롤인지 확인할 수 있는 앰비언트 속성입니다.

STDMETHOD(get_DisplayAsDefault)(VARIANT_BOOL* pbDisplayAsDefault);

매개 변수

pbDisplayAsDefault
[out] 이 속성의 현재 값을 받을 변수의 주소입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 이 속성의 기본값으로 VARIANT_FALSE 사용합니다.

IAxWinAmbientDispatch::get_DocHostDoubleClickFlags

이 속성은 DocHostDoubleClickFlags 두 번 클릭에 대한 응답으로 수행해야 하는 작업을 지정합니다.

STDMETHOD(get_DocHostDoubleClickFlags)(DWORD* pdwDocHostDoubleClickFlags);

매개 변수

pdwDocHostDoubleClickFlags
[out] 이 속성의 현재 값을 받을 변수의 주소입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 이 속성의 기본값으로 DOCHOSTUIDBLCLK_DEFAULT 사용합니다.

IAxWinAmbientDispatch::get_DocHostFlags

이 속성은 DocHostFlags 호스트 개체의 사용자 인터페이스 기능을 지정합니다.

STDMETHOD(get_DocHostFlags)(DWORD* pdwDocHostFlags);

매개 변수

pdwDocHostFlags
[out] 이 속성의 현재 값을 받을 변수의 주소입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 이 속성의 기본값으로 DOCHOSTUIFLAG_NO3DBORDER 사용합니다.

IAxWinAmbientDispatch::get_Font

이 속성은 Font 컨테이너의 앰비언트 글꼴을 지정합니다.

STDMETHOD(get_Font)(IFontDisp** pFont);

매개 변수

pFont
[out] 이 속성의 IFontDisp 현재 값을 받는 데 사용되는 인터페이스 포인터의 주소입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 기본 GUI 글꼴 또는 시스템 글꼴을 이 속성의 기본값으로 사용합니다.

IAxWinAmbientDispatch::get_ForeColor

이 속성은 ForeColor 컨테이너의 앰비언트 전경색을 지정합니다.

STDMETHOD(get_ForeColor)(OLE_COLOR* pclrForeground);

매개 변수

pclrForeground
[out] 이 속성의 현재 값을 받을 변수의 주소입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 시스템 창 텍스트 색을 이 속성의 기본값으로 사용합니다.

IAxWinAmbientDispatch::get_LocaleID

이 속성은 LocaleID 컨테이너의 앰비언트 로캘 ID를 지정합니다.

STDMETHOD(get_LocaleID)(LCID* plcidLocaleID);

매개 변수

plcidLocaleID
[out] 이 속성의 현재 값을 받을 변수의 주소입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 사용자의 기본 로캘을 이 속성의 기본값으로 사용합니다.

이 메서드를 사용하면 컨트롤이 사용되는 프로그램의 LocaleID인 Ambient LocalID를 검색할 수 있습니다. LocaleID를 알게 되면 코드를 호출하여 리소스 파일 또는 위성 DLL에서 로캘별 캡션, 오류 메시지 텍스트 등을 로드할 수 있습니다.

IAxWinAmbientDispatch::get_MessageReflect

앰비언트 속성은 MessageReflect 컨테이너가 호스트된 컨트롤에 메시지를 반영할지 여부를 지정합니다.

STDMETHOD(get_MessageReflect)(VARIANT_BOOL* pbMessageReflect);

매개 변수

pbMessageReflect
[out] 이 속성의 현재 값을 받을 변수의 주소입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 이 속성의 기본값으로 VARIANT_TRUE 사용합니다.

IAxWinAmbientDispatch::get_OptionKeyPath

이 속성은 OptionKeyPath 사용자 설정에 대한 레지스트리 키 경로를 지정합니다.

STDMETHOD(get_OptionKeyPath)(BSTR* pbstrOptionKeyPath);

매개 변수

pbstrOptionKeyPath
[out] 이 속성의 현재 값을 받을 변수의 주소입니다.

반환 값

표준 HRESULT 값입니다.

IAxWinAmbientDispatch::get_ShowGrabHandles

ShowGrabHandles 앰비언트 속성을 사용하면 컨트롤이 잡기 핸들로 직접 그려야 하는지 확인할 수 있습니다.

STDMETHOD(get_ShowGrabHandles)(VARIANT_BOOL* pbShowGrabHandles);

매개 변수

pbShowGrabHandles
[out] 이 속성의 현재 값을 받을 변수의 주소입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 항상 이 속성의 값으로 VARIANT_FALSE 반환합니다.

IAxWinAmbientDispatch::get_ShowHatching

ShowHatching 앰비언트 속성을 사용하면 컨트롤이 자체 빗살 무늬로 그려야 하는지 확인할 수 있습니다.

STDMETHOD(get_ShowHatching)(VARIANT_BOOL* pbShowHatching);

매개 변수

pbShowHatching
[out] 이 속성의 현재 값을 받을 변수의 주소입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 항상 이 속성의 값으로 VARIANT_FALSE 반환합니다.

IAxWinAmbientDispatch::get_UserMode

이 속성은 UserMode 컨테이너의 앰비언트 사용자 모드를 지정합니다.

STDMETHOD(get_UserMode)(VARIANT_BOOL* pbUserMode);

매개 변수

pbUserMode
[out] 이 속성의 현재 값을 받을 변수의 주소입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 이 속성의 기본값으로 VARIANT_TRUE 사용합니다.

IAxWinAmbientDispatch::p ut_AllowContextMenu

이 속성은 AllowContextMenu 호스트된 컨트롤이 자체 상황에 맞는 메뉴를 표시할 수 있는지 여부를 지정합니다.

STDMETHOD(put_AllowContextMenu)(VARIANT_BOOL bAllowContextMenu);

매개 변수

bAllowContextMenu
[in] 이 속성의 새 값입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 이 속성의 기본값으로 VARIANT_TRUE 사용합니다.

IAxWinAmbientDispatch::p ut_AllowShowUI

이 속성은 AllowShowUI 호스트된 컨트롤이 자체 사용자 인터페이스를 표시할 수 있는지 여부를 지정합니다.

STDMETHOD(put_AllowShowUI)(VARIANT_BOOL bAllowShowUI);

매개 변수

bAllowShowUI
[in] 이 속성의 새 값입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 이 속성의 기본값으로 VARIANT_FALSE 사용합니다.

IAxWinAmbientDispatch::p ut_AllowWindowlessActivation

이 속성은 AllowWindowlessActivation 컨테이너가 창 없는 활성화를 허용할지 여부를 지정합니다.

STDMETHOD(put_AllowWindowlessActivation)(VARIANT_BOOL bAllowWindowless);

매개 변수

bAllowWindowless
[in] 이 속성의 새 값입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 이 속성의 기본값으로 VARIANT_TRUE 사용합니다.

IAxWinAmbientDispatch::p ut_BackColor

이 속성은 BackColor 컨테이너의 앰비언트 배경색을 지정합니다.

STDMETHOD(put_BackColor)(OLE_COLOR clrBackground);

매개 변수

clrBackground
[in] 이 속성의 새 값입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 COLOR_BTNFACE 또는 COLOR_WINDOW 이 속성의 기본값으로 사용합니다(호스트 창의 부모가 대화 상자인지 여부에 따라 다름).

IAxWinAmbientDispatch::p ut_DisplayAsDefault

DisplayAsDefault 는 컨트롤이 기본 컨트롤인지 확인할 수 있는 앰비언트 속성입니다.

STDMETHOD(put_DisplayAsDefault)(VARIANT_BOOL bDisplayAsDefault);

매개 변수

bDisplayAsDefault
[in] 이 속성의 새 값입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 이 속성의 기본값으로 VARIANT_FALSE 사용합니다.

IAxWinAmbientDispatch::p ut_DocHostDoubleClickFlags

이 속성은 DocHostDoubleClickFlags 두 번 클릭에 대한 응답으로 수행해야 하는 작업을 지정합니다.

STDMETHOD(put_DocHostDoubleClickFlags)(DWORD dwDocHostDoubleClickFlags);

매개 변수

dwDocHostDoubleClickFlags
[in] 이 속성의 새 값입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 이 속성의 기본값으로 DOCHOSTUIDBLCLK_DEFAULT 사용합니다.

IAxWinAmbientDispatch::p ut_DocHostFlags

이 속성은 DocHostFlags 호스트 개체의 사용자 인터페이스 기능을 지정합니다.

STDMETHOD(put_DocHostFlags)(DWORD dwDocHostFlags);

매개 변수

dwDocHostFlags
[in] 이 속성의 새 값입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 이 속성의 기본값으로 DOCHOSTUIFLAG_NO3DBORDER 사용합니다.

IAxWinAmbientDispatch::p ut_Font

이 속성은 Font 컨테이너의 앰비언트 글꼴을 지정합니다.

STDMETHOD(put_Font)(IFontDisp* pFont);

매개 변수

pFont
[in] 이 속성의 새 값입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 기본 GUI 글꼴 또는 시스템 글꼴을 이 속성의 기본값으로 사용합니다.

IAxWinAmbientDispatch::p ut_ForeColor

이 속성은 ForeColor 컨테이너의 앰비언트 전경색을 지정합니다.

STDMETHOD(put_ForeColor)(OLE_COLOR clrForeground);

매개 변수

clrForeground
[in] 이 속성의 새 값입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 시스템 창 텍스트 색을 이 속성의 기본값으로 사용합니다.

IAxWinAmbientDispatch::p ut_LocaleID

이 속성은 LocaleID 컨테이너의 앰비언트 로캘 ID를 지정합니다.

STDMETHOD(put_LocaleID)(LCID lcidLocaleID);

매개 변수

lcidLocaleID
[in] 이 속성의 새 값입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 사용자의 기본 로캘을 이 속성의 기본값으로 사용합니다.

IAxWinAmbientDispatch::p ut_MessageReflect

앰비언트 속성은 MessageReflect 컨테이너가 호스트된 컨트롤에 메시지를 반영할지 여부를 지정합니다.

STDMETHOD(put_MessageReflect)(VARIANT_BOOL bMessageReflect);

매개 변수

bMessageReflect
[in] 이 속성의 새 값입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 이 속성의 기본값으로 VARIANT_TRUE 사용합니다.

IAxWinAmbientDispatch::p ut_OptionKeyPath

이 속성은 OptionKeyPath 사용자 설정에 대한 레지스트리 키 경로를 지정합니다.

STDMETHOD(put_OptionKeyPath)(BSTR bstrOptionKeyPath);

매개 변수

bstrOptionKeyPath
[in] 이 속성의 새 값입니다.

반환 값

표준 HRESULT 값입니다.

IAxWinAmbientDispatch::p ut_UserMode

이 속성은 UserMode 컨테이너의 앰비언트 사용자 모드를 지정합니다.

STDMETHOD(put_UserMode)(VARIANT_BOOL bUserMode);

매개 변수

bUserMode
[in] 이 속성의 새 값입니다.

반환 값

표준 HRESULT 값입니다.

설명

ATL 호스트 개체 구현은 이 속성의 기본값으로 VARIANT_TRUE 사용합니다.

IAxWinAmbientDispatchEx::SetAmbientDispatch

이 메서드는 기본 앰비언트 속성 인터페이스를 사용자 정의 인터페이스로 보완하기 위해 호출됩니다.

virtual HRESULT STDMETHODCALLTYPE SetAmbientDispatch(IDispatch* pDispatch) = 0;

매개 변수

pDispatch
새 인터페이스에 대한 포인터입니다.

반환 값

성공 시 S_OK를 반환하거나 실패 시 HRESULT 오류를 반환합니다.

설명

새 인터페이스에 대한 포인터를 사용하여 호출되는 경우 SetAmbientDispatch 이 새 인터페이스는 IAxWinAmbientDispatch에서 해당 속성을 아직 제공하지 않은 경우 호스트된 컨트롤에서 요청하는 모든 속성 또는 메서드를 호출하는 데 사용됩니다.

IAxWinHostWindow::AttachControl

hWnd로 식별된 창을 사용하여 기존(및 이전에 초기화된) 컨트롤을 호스트 개체에 연결합니다.

STDMETHOD(AttachControl)(IUnknown* pUnkControl, HWND hWnd);

매개 변수

pUnkControl
[in] 호스트 개체에 IUnknown 연결할 컨트롤의 인터페이스에 대한 포인터입니다.

hWnd
[in] 호스팅에 사용할 창에 대한 핸들입니다.

반환 값

표준 HRESULT 값입니다.

IAxWinHostWindow::CreateControl

컨트롤을 만들고, 초기화하고, hWnd로 식별된 창에서 호스트합니다.

STDMETHOD(CreateControl)(
    LPCOLESTR lpTricsData,
    HWND hWnd,
    IStream* pStream);

매개 변수

lpTricsData
[in] 만들 컨트롤을 식별하는 문자열입니다. CLSID(중괄호 포함), ProgID, URL 또는 원시 HTML(MSHTML 접두사 :)일 수 있습니다.

hWnd
[in] 호스팅에 사용할 창에 대한 핸들입니다.

pStream
[in] 컨트롤의 초기화 데이터를 포함하는 스트림에 대한 인터페이스 포인터입니다. NULL일 수 있습니다.

반환 값

표준 HRESULT 값입니다.

설명

이 창은 이 인터페이스를 노출하는 호스트 개체에 의해 서브클래싱되므로 메시지가 컨트롤에 반영되고 다른 컨테이너 기능이 작동합니다.

이 메서드를 호출하는 것은 IAxWinHostWindow::CreateControlEx를 호출하는 것과 같습니다.

라이선스가 부여된 ActiveX 컨트롤 을 만들려면 IAxWinHostWindowLic::CreateControlLic을 참조하세요.

IAxWinHostWindow::CreateControlEx

ActiveX 컨트롤을 만들고, 초기화하고, 지정된 창에서 IAxWinHostWindow::CreateControl과 유사하게 호스트합니다.

STDMETHOD(CreateControlEx)(
    LPCOLESTR lpszTricsData,
    HWND hWnd,
    IStream* pStream,
    IUnknown** ppUnk,
    REFIID riidAdvise,
    IUnknown* punkAdvise);

매개 변수

lpTricsData
[in] 만들 컨트롤을 식별하는 문자열입니다. CLSID(중괄호 포함), ProgID, URL 또는 원시 HTML(MSHTML 접두사 :)일 수 있습니다.

hWnd
[in] 호스팅에 사용할 창에 대한 핸들입니다.

pStream
[in] 컨트롤의 초기화 데이터를 포함하는 스트림에 대한 인터페이스 포인터입니다. NULL일 수 있습니다.

ppUnk
[out] 만든 컨트롤의 인터페이스를 IUnknown 받을 포인터의 주소입니다. NULL일 수 있습니다.

riidAdvise
[in] 포함된 개체에서 나가는 인터페이스의 인터페이스 식별자입니다. IID_NULL 수 있습니다.

punkAdvise
[in] 지정된 개체의 연결점에 연결할 싱크 개체IUnknown의 인터페이스에 대한 포인터 iidSink 입니다.

반환 값

표준 HRESULT 값입니다.

설명

메서드와 CreateControl 달리 새로 CreateControlEx 만든 컨트롤에 대한 인터페이스 포인터를 수신하고 컨트롤에서 발생한 이벤트를 수신하도록 이벤트 싱크를 설정할 수도 있습니다.

라이선스가 부여된 ActiveX 컨트롤을 만들려면 IAxWinHostWindowLic::CreateControlLicEx를 참조하세요.

IAxWinHostWindow::QueryControl

호스트된 컨트롤에서 제공하는 지정된 인터페이스 포인터를 반환합니다.

STDMETHOD(QueryControl)(REFIID riid, void** ppvObject);

매개 변수

riid
[in] 요청되는 컨트롤의 인터페이스 ID입니다.

ppvObject
[out] 만든 컨트롤의 지정된 인터페이스를 받을 포인터의 주소입니다.

반환 값

표준 HRESULT 값입니다.

IAxWinHostWindow::SetExternalDispatch

IDocHostUIHandlerDispatch::GetExternal 메서드를 통해 포함된 컨트롤에 사용할 수 있는 외부 dispinterface를 설정합니다.

STDMETHOD(SetExternalDispatch)(IDispatch* pDisp);

매개 변수

pDisp
[in] 인터페이스에 대한 포인터입니다 IDispatch .

반환 값

표준 HRESULT 값입니다.

IAxWinHostWindow::SetExternalUIHandler

이 함수를 호출하여 개체에 대한 외부 IDocHostUIHandlerDispatch 인터페이스를 CAxWindow 설정합니다.

STDMETHOD(SetExternalUIHandler)(IDocHostUIHandlerDispatch* pDisp);

매개 변수

pDisp
[in] 인터페이스에 대한 포인터입니다 IDocHostUIHandlerDispatch .

반환 값

표준 HRESULT 값입니다.

설명

이 함수는 호스트의 사이트에서 IDocHostUIHandlerDispatch 인터페이스를 쿼리하는 컨트롤(예: 웹 브라우저 컨트롤)에서 사용됩니다.

IAxWinHostWindowLic::CreateControlLic

사용이 허가된 컨트롤을 만들고, 초기화하고, 식별된 창 hWnd에서 호스트합니다.

STDMETHOD(CreateControlLic)(
    LPCOLESTR lpTricsData,
    HWND hWnd,
    IStream* pStream,
    BSTR bstrLic);

매개 변수

bstrLic
[in] 컨트롤에 대한 라이선스 키가 포함된 BSTR입니다.

설명

나머지 매개 변수 및 반환 값에 대한 설명은 IAxWinHostWindow::CreateControl을 참조하세요.

이 메서드를 호출하는 것은 IAxWinHostWindowLic::CreateControlLicEx를 호출 하는 것과 같습니다.

예시

사용하는 샘플은 ATL AXHostIAxWinHostWindowLic::CreateControlLic.

IAxWinHostWindowLic::CreateControlLicEx

IAxWinHostWindow::CreateControl과 유사하게 라이선스가 부여된 ActiveX 컨트롤을 만들고, 초기화하고, 지정된 창에서 호스트합니다.

STDMETHOD(CreateControlLicEx)(
    LPCOLESTR lpszTricsData,
    HWND hWnd,
    IStream* pStream,
    IUnknown** ppUnk,
    REFIID riidAdvise,
    IUnknown* punkAdvise,
    BSTR bstrLic);

매개 변수

bstrLic
[in] 컨트롤에 대한 라이선스 키가 포함된 BSTR입니다.

설명

나머지 매개 변수 및 반환 값에 대한 설명은 IAxWinHostWindow::CreateControlEx를 참조하세요.

예시

사용하는 샘플은 ATL AXHostIAxWinHostWindowLic::CreateControlLicEx.

참고 항목

클래스 개요