분류 389

고급 액티브X 컨트롤에 도전하자

지난 연재에서는 컨트롤의 내부를 살펴봤다. 이번호에서는 보다 좋은 컨트롤을 만들기 위한 외부적인 기능들을 몇 가지 소개하고 3회에 걸친 연재를마치려고 한다. 컨트롤이 IE 안에서 다양한 기능을 수행하기 위해 기본적으로 제공해야 할 기능이 있다. 이번호에서는 메모리 DC를 사용한 부드러운 화면 처리, 툴팁의 제공, 쓰레드의 활용 등 대표적인 기능들을 하나씩 살펴보겠다. 웹을 기반으로 하는 프로젝트에서 중요 기능을 액티브X 컨트롤로 개발하기 위해서는 몇 가지 선행 지식이 있어야 한다. 우리는 지난 1회 연재를 통해 전체 개발 프로세스를 알아왔다. 컨트롤을 어떻게 만들고 어떻게 분배하는지를 볼 수 있었을 것이다. 2회 연재에서는 좀더 이론적인 부분으로 들어가 IE의 내부적인 구조와 이 구조에 따른 컨트롤의 특..

ActiveX 2008.09.14

System Device Enumerator 의 사용법 - 모니커 사용 예

System Device Enumerator 의 사용법 System Device Enumerator 는, 사용자의 시스템에 등록되어 있는 필터를 카테고리 마다 열거하기 위한 통일된 방법을 제공한다. 게다가 같은 필터가 복수의 장치를 지원 하고 있는 경우에서도, 각각의 하드웨어 장치를 구별할 수 있다. 이것은, Windows Driver Model (WDM) 및 KSProxy 필터를 사용하는 장치의 경우에 특히 유용하다. 예를 들어, 사용자가 복수의 WDM 비디오 캡춰 장치를 가져, 그것들 모든 것이 같은 필터에 의해 지원 되는 일이 있다. System Device Enumerator 는, 이것들을 다른 장치 인터페이스로서 취급한다. System Device Enumerator 는, 오디오 캡춰나 비디오 ..

COM, ATL 2008.09.14

HTML 로딩 : WebBrowser 컨트롤을 이용과 모니커를 이용

첫번쩨 웹브라우저 컨트롤 이용 hIEWnd = GetDlgItem(hDlg, IDC_EXPLORER1); if(S_OK == AtlAxGetControl(hIEWnd, &pUnk)){ if(S_OK == pUnk->QueryInterface(IID_IWebBrowser2, (void**)&pWeb)){ CComVariant varEmpty, varUrl("http://www.naver.com"); pWeb->Navigate2(&varUrl, &varEmpty, &varEmpty, &varEmpty, &varEmpty); } pUnk->Release(); } 두번째 모니커 이용 { IDispatch * pDisp=NULL; if(S_OK == pWeb->get_Document(&pDisp) && pDisp..

웹, HTML 2008.09.13

해시 ppt - 자료구조

자료을 입력할때 해시테이블의 인덱스를 얻는 로직이 자료를 검색할 경우에도 그대로 사용되므로 빠른 검색이 가능하다. 즉 입력할 시 로직(해싱함수)을 사용함으로써 약간의 희생을 감수하고 검색시 보상받는 것이다. 보통 자료 입력은 개별적으로 이루어지고 검색 같은 경우는 대량의 데이터에서 찾는 형태를 취하는 경우가 많으므로 이런 자료구조는 아주 효용성이 높다고 생각된다.

C, C++ 문법 2008.09.12