메서드/속성 액세스 컨테이너 시작 스크립트 방법

중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.

188015
이 문서가 보관되었습니다. "그대로" 제공되었으며, 업데이트가 되지 않을 것입니다.
요약
Visual C++ 응용 프로그램에서는 WebBrowser 컨트롤을 호스팅할 때 필요한 메서드나 속성을 컨테이너의 웹 페이지의 스크립트에서 액세스할 수 있습니다. 이 문서에서는 이 IDocHostUIHandler 인터페이스를 구현하는 방법에 대해 설명합니다.
추가 정보
IDocHostUIHandler 인터페이스를 구현하여 WebBrowser 컨트롤의 사용자 인터페이스 기능 중 많은 호스팅 응용 프로그램에서 제어할 수 있습니다. IDocHostUIHandler 사용하면 동적 HTML(DHTML) 개체 모델 액세스 방법 및 스크립트 내에서 컨테이너에서 속성을 확장할 수 있습니다.

IDocHostUIHandler GetExternal() 메서드는 이 기능을 제공합니다. "window.external.yourMethod" 웹 페이지의 스크립트를 호출하는 경우 WebBrowser 컨트롤의 호스팅 응용 프로그램의 IDispatch 포인터를 검색할 수 GetExternal 메서드를 호출합니다. WebBrowser 컨트롤 메서드 및 속성에 액세스할 수 있는지 이 포인터를 통해 것입니다.

WebBrowser 컨트롤 컨테이너의 IDispatch에 대한 포인터를 가집니다 일단 IDispatch::GetIDsOfNames() 메서드 또는 속성이 경우 yourMethod 스크립트에서 호출되는 DISPID 가져오려면 다음 호출합니다.

마지막으로, WebBrowser 컨트롤을 호출을 사용하여 DISPID 함께 IDispatch::Invoke() GetIDsOfNames()에서 검색할.

DHTML 개체 모델의 컨테이너의 메서드와 속성은 스크립트에서 액세스할 수 있도록 확장하는 위해 따라야 하는 단계는 다음과 같습니다.
  1. IDocHostUIHandler를 구현하십시오.
  2. IDocHostUIHandler::GetExternal 메서드를 구현하십시오. 해당 IDispatch 설정할 같이 해당 컨테이너 매개 변수:
    STDMETHOD(GetExternal)(IDispatch** ppDispatch){   // Assumes you inherit from IDispatch   *ppDispatch = (IDispatch*)this;   (*ppDispatch)->AddRef();   return S_OK;}					
  3. 디스패치 메서드 또는 속성 (DISPID) ID에서 GetIDsOfNames 반환하십시오. 메서드 또는 마법사를 사용하여 속성을 추가한 경우 이 자동으로 수행됩니다.
  4. 구현 메서드 또는 속성에서 IDispatch::Invoke 구현 DISPID 다음과 같이:
    STDMETHODIMP CAtlBrCon::Invoke(DISPID dispidMember, REFIID riid,                               LCID lcid, WORD wFlags,                               DISPPARAMS* pDispParams,                               VARIANT* pvarResult,                               EXCEPINFO* pExcepInfo, UINT* puArgErr){   switch (dispidMember)   {      case DISPID_MYMETHOD_OR_PROPERTY:         // Do something here      default:         return E_INVALIDARG;   }   return S_OK;}					
  5. 이러한 스크립트를 컨테이너의 속성 또는 메서드를 호출하는:
     <SCRIPT LANGUAGE="VBScript">    Sub SomeControl_OnClick       window.external.yourMethod    End Sub </SCRIPT>					
참조
이 문서에서 언급된 기술에 대한 자세한 내용은 고급 호스팅 인터페이스 및 MSDN Online 웹 제작 IDocHostUIHandler 관련된 설명서를 참조하십시오. (c) Microsoft의 1998, 예약 모든 권한. Scott은 Roberts, Microsoft Corporation에 의해 기고물

Warning: This article has been translated automatically

속성

문서 ID: 188015 - 마지막 검토: 02/06/2014 01:20:07 - 수정: 2.1

  • Microsoft Internet Explorer 4.0 128-Bit Edition
  • Microsoft Internet Explorer 4.01 서비스 팩 2
  • Microsoft Internet Explorer 4.01 서비스 팩 1
  • Microsoft Internet Explorer 5.0
  • Microsoft Internet Explorer 5.5
  • kbnosurvey kbarchive kbmt kbfaq kbhowto kbscript kbwebbrowser KB188015 KbMtko
피드백