다음을 통해 공유


IAxWinHostWindow 인터페이스

이 인터페이스는 컨트롤과 해당 호스트 개체를 조작하는 메서드를 제공합니다.

Important

이 클래스와 해당 멤버는 Windows 런타임에서 실행되는 애플리케이션에서 사용할 수 없습니다.

구문

interface IAxWinHostWindow : IUnknown

멤버

메서드

속성 설명
AttachControl 호스트 개체에 기존 컨트롤을 연결합니다.
CreateControl 컨트롤을 만들고 호스트 개체에 연결합니다.
CreateControlEx 컨트롤을 만들고, 호스트 개체에 연결하고, 필요에 따라 이벤트 처리기를 설정합니다.
QueryControl 호스팅된 컨트롤에 대한 인터페이스 포인터를 반환합니다.
SetExternalDispatch 외부 IDispatch 인터페이스를 설정합니다.
SetExternalUIHandler 외부 IDocHostUIHandlerDispatch 인터페이스를 설정합니다.

설명

이 인터페이스는 ATL의 ActiveX 컨트롤 호스팅 개체에 의해 노출됩니다. 이 인터페이스의 메서드를 호출하여 호스트 개체에 컨트롤을 만들고/또는 연결하거나, 호스트된 컨트롤에서 인터페이스를 얻거나, 웹 브라우저를 호스팅할 때 사용할 외부 dispinterface 또는 UI 처리기를 설정합니다.

요구 사항

이 인터페이스의 정의는 아래와 같이 IDL 또는 C++로 사용할 수 있습니다.

정의 유형 파일
IDL ATLIFace.idl
C++ ATLIFace.h(ATLBase.h에도 포함)

IAxWinHostWindow::AttachControl

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

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

매개 변수

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

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

Return Value

표준 HRESULT 값입니다.

IAxWinHostWindow::CreateControl

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

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

매개 변수

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

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

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

Return Value

표준 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] 지정된 개체의 연결점에 연결할 싱크 개체iidSink의 인터페이스에 대한 포인터 IUnknown 입니다.

Return Value

표준 HRESULT 값입니다.

설명

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

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

IAxWinHostWindow::QueryControl

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

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

매개 변수

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

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

Return Value

표준 HRESULT 값입니다.

IAxWinHostWindow::SetExternalDispatch

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

STDMETHOD(SetExternalDispatch)(IDispatch* pDisp);

매개 변수

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

Return Value

표준 HRESULT 값입니다.

IAxWinHostWindow::SetExternalUIHandler

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

STDMETHOD(SetExternalUIHandler)(IDocHostUIHandlerDispatch* pDisp);

매개 변수

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

Return Value

표준 HRESULT 값입니다.

설명

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

참고 항목

IAxWinAmbientDispatch 인터페이스
CAxWindow::QueryHost
AtlAxGetHost