|
답변 감사합니다.
그런데, 제가 워낙 허접이라서 ^^;;
죄송하지만, 예제를 올려주시면 감사드리겠습니다.
새더군 님이 쓰신 글 :
: 비슷한 작업을 해본적이 있긴한데..
: 범용적으로 사용할수 있는 방법인지 아직 검증되지 않았습니다.
:
: 작동하고 있는 웹브라우져의 IWebBrowser2 인터페이스를 가져와 보겠습니다.
: 먼저 실행중인 인터넷익스플로러서버의 윈도우 핸들이 있어야 합니다.
:
: LRESULT lr;
: IUnknown * pUnknown;
: UINT uMsg = RegisterWindowMessage("WM_HTML_GETOBJECT");
: SendMessageTimeout(hWnd, uMsg, 0, 0, SMTO_ABORTIFHUNG, 1000, (DWORD *) &lr);
: ObjectFromLresult(lr, IID_IUnknown, 0, (void **)&pUnknown);
:
: 정상적으로 실행이 되었다면 pUnknown 를 통해 IWebBrowser2 에
: 일반적인 방법(ServiceProvider)으로 접근 가능합니다.
:
: 이제 여기서 구해진 IWebBrowser2 를 통해 IConnectionPointContainer 를 가져옵니다.
: 컨테이너에서 원하는 이벤트의 IConnectionPoint 를 가져 온다음..
: 직접 작성하진 IDispatch의 포인터를 Advise 해주시면 됩니다.
:
: 그럼 좋은하루 되세요.. ^^;..
:
: P.S : 저런결과를 통해서 얻어온 인터페이스에서는 Reading 만 가능하더군요.. --;
:
: gongnim 님이 쓰신 글 :
: : 빌더에서 외부 COM객체의 인터페이스를 구해서 Sink Event를 받으려면 어떻게 해야하나요?
: : 외부 COM객체에 이벤트를 줄 수는 있겠는데, 이벤트를 받아오는 방법은 도무지 모르겠군요.
: : 어느 책을 봐도 외부 COM객체가 아닌 내부 COM객체의 이벤트를 받아오는것만 있으니....
: : 답변 기다리겠습니다.
: :
: : --- Change World ---
|