ActiveX 컨트롤로부터 URL 알아내기
1.요약 ActiveX 컨트롤로부터 URL 을 알아내는 뱡법에 대해서 알아봅니다. 2.본문 일반적으로 ActiveX 컨트롤이 자신이 삽입된 URL 의 정보를 알기 위해서는 스크립트 코드를 사용해서 URL 을 알려주는 코드를 사용한다던지, 혹은 PARAM 과 같은 코드를 사용해서 property 에 URL 값을 알려줄 수 있습니다. 하지만, 이러한 방법이 아닌 ActiveX 컨트롤이 URL 을 직접 알 수 있다면, 훨씬 더 편리하겠죠. 이러한 방법은 IOleClientSite 인터페이스를 사용하여 IMoniker 를 얻고 IMoniker 의 GetDisplayName 함수를 사용하면 가능합니다. 아래의 예제를 참고하세요. 3.예제 HRESULT hrResult = S_FALSE; IOleClientSite *pClientSite = NULL; IMoniker* pMoniker = NULL; LPOLESTR sDisplayName; // 만약 ATL 을 사용했다면, m_spClientSite 를 사용하세요. // CComControl 클래스의 멤버입니다. // 만약 MFC를 사용한다면, 아래의 코드를 이용하세요. // pClientSite = GetClientSite(); // * 나중에 릴리즈 하는거 잊지 마세요.. hrResult = m_spClientSite->GetMoniker(OLEGETMONIKER_TEMPFORUSER, OLEWHICHMK_CONTAINER, &pMoniker); if(SUCCEEDED(hrResult)) { hrResult = pMoniker->GetDisplayName(NULL, NULL, &sDisplayName); pMoniker->Release(); } //sDisplayName 을 사용한 후에는 //반드시 SysFreeString() 을 사용하여 , 메모리에서 제거해야합니다. 4.참고 http://codeguru.earthweb.com/internet/WebUrlActiveX.html - 2001.08.19 Smile Seo - |
'웹, HTML' 카테고리의 다른 글
스크립트 언어로 창 크기 조절하기 (0) | 2008.09.07 |
---|---|
Visual Studio 2005에서 브라우저 도우미 개체 만들기(Windows IETechCol) (0) | 2008.09.06 |
클라이언트 인터넷 익스플로러와 연동하기 (0) | 2008.09.06 |
ie7에서 self close (1) | 2008.08.26 |
ActiveX로 웹페이지의 URL가져오기 (0) | 2008.08.14 |
IWebBrowser2 를 이용해서 웹브라우저 원하는 위치에 띄우기 Tools와 Tips (0) | 2008.08.14 |
부분 소스 보기 (IE6, IE7) (2) | 2008.07.31 |