ActiveX 설치시에 CAB 파일내의 EXE 파일 실행하기 DarkKaiser, 2010년 4월 4일2023년 9월 5일 [version] ; version signature (same for both NT and Win95) do not remove signature="$CHICAGO$" AdvancedINF=2.0 [Add.Code] MessengerApp.INF=MessengerApp.INF [MessengerApp.INF] file-win32-x86=thiscab [Setup Hooks] hook=hook [hook] run=%EXTRACT_DIR%\MessengerApi.exe /s [Setup Hooks]에 실행할 파일명을 넣어주면 된다. 이때 CAB 파일을 묶을때 INF 파일도 같이 포함하도록 한다. Continue Reading
ActiveX 서명 과정 자동화 DarkKaiser, 2009년 9월 16일2023년 8월 30일 출처 : http://www.sysnet.pe.kr/Default.aspx?mode=2&sub=0&detail=1&wid=327 ActiveX 서명을 위해서, 보통 사용되어지는 툴이 signcode.exe 이죠. 이 도구를 이용해서 다음과 같은 식의 명령행 인자로 ActiveX 에 대해 서명을 하게 됩니다. signcode /spc myCertificate.spc /v myKey.pvk myactivex.dll signcode.exe 에는 한가지 단점이 있지요. 바로 암호를 명령행에서 입력할 수 없고, 반드시 위와 같이 실행한 다음에 나오는 팝업창에 입력을 Continue Reading
웹페이지의 MFC 컨트롤을 패키지로 만드는 방법 DarkKaiser, 2007년 7월 17일2023년 9월 6일 Activex를 CAB 파일로 만들때 필요한 inf파일 작성법 http://support.microsoft.com/default.aspx?scid=kb%3Bko%3BKR167158 Continue Reading
Web으로부터 ActiveX 컨트롤을 다운받아서 실행하는 VC 예제 DarkKaiser, 2007년 7월 17일2023년 9월 6일 VC에서도 Internet Explorer처럼 웹에서 ActiveX를 다운로드 받아서 실행(ocx, cab)시키는 방법이 있더군요. 기본적으로 IBindStatusCallback을 사용하여 다운로드를 진행하고 CoGetClassObjectFromURL()함수를 이용하여 ClassFactory를 얻어오게 되어있습니다. 다운로드가 완료되면 CWnd::CreateControl()을 이용하여 CWnd에 Attatch되는군요. urlobj.zip Continue Reading
IWebBrowser2와 IHTMLDocument2의 상호변환 DarkKaiser, 2007년 6월 30일2023년 9월 5일 1. IWebBrowser2 에서 IHTMLDocument2 인터페이스 구하기 IWebBrowser2 *m_pWebFromUnknown; IWebBrowser2 *m_pWebFromDoc; STDMETHODIMP CTestObj::SetSite( IUnknown *pUnkSite ) { IOleClientSite *pClientSite; HRESULT hr; hr = pUnkSite-QueryInterface( IID_IOleClientSite, (LPVOID *)&pClientSite ); if ( FAILED( hr ) ) return S_OK; IOleContainer *pContainer; hr = pClientSite-GetContainer( &pContainer ); pClientSite-Release(); if ( FAILED( hr Continue Reading
ActiveX 컨트롤 배포시 설치 여부 판단용 자바스크립트 DarkKaiser, 2007년 6월 12일2023년 9월 4일 function DetectActiveXControl() { try { var xObj = new ActiveXObject("XControl.X"); if(xObj) Installed = true; else Installed = false; } catch(ex) { Installed = false; } if(Installed == true) { alert("ActiveX Control이 설치됫네 *^^*"); } else { alert("ActiveX Control이 설치되지 않았네 -_-"); window.location.reload(); } } Continue Reading