티스토리 뷰
ATL 디버깅
DCOM 디버깅 / COM디버깅
디버깅 시 Client 에서 로컬 ATL DCOM 서버 호출 시 아래와 같은 예외가 발생한다.
1. ATL 서버가 실행되어 있는지 확인한다.
2. ATL 서버가 중복 실행되어 있는지 확인한다.
3. 디버그 tlb를 가져와서 Client 를 컴파일 했는지 확인한다.
4. Client와 ATL서버의 전송하는 데이터 타입이 맞는지 확인한다.
특히, 구조체인 경우 멤버의 데이터 타입도 확인해줘야 한다.
(예, Client 구조체의 CString 멤버를 ATL서버에 전달하면 디버깅 시 ATL 서버측 코드가 안보이고 위 그림처럼 나오므로, 반드시 BSTR 로 바꿔 구조체를 전달해야 한다.)
======
ATL 서버와 Client 둘 다 디버그 모드로 실행하면, Client 에서 호출한 ATL 서버 코드를 디버깅 할 수 있다.