ActiveX 콘트롤 디버깅하기

Program Visual C++ 2007. 1. 24. 13:02 Posted by HisPark
1. 메뉴에 있는 "Project"를 열고, Project->Setting->Debug 탭으로 이동합니다.

Category에서 "General"을 선택합니다.

2. Excutable for debug session: 에는 디버그로 실행할 웹브라우저의 실행화일 경로명을 적습니다.
3. Program arguments: 에는 ActiveX 콘트롤을 심어놓은(즉 <Object> 태그가 들어있는) HTML 파일의
경로명을 적습니다.

그리고 디버깅을 시작하면 디버깅 심볼들을 로딩하며 브레이크 포인트도 잘 먹습니다.

4. TRACE("")문은 동작하지 않으며 ATLTRACE("")을 써야 합니다. 다음과 같이 써주면 되겠죠.

ATLTRACE(_T("Server Name: %s \r\n"), m_strUpdateServerName.c_str());

5. ATL/COM으로 모듈 작성시에는 CreateProcess()보다 _beginthread()나 _beginthreadex()를
쓰시는게 더 좋습니다. CreateProcess()의 경우에 스레드가 끝날때 제대로 CRT 스택을 uninitialize하지
못한다고 합니다.