전 윈도우 기반 응용프로그램 개발을 주로 합니다만.. 최근에 팔자에 없는 드라이버 개발을 하고 있습니다. 하드웨어를 직접 제어하는 것은 아니구요. VoIP 를 이용한 가상드라이버를 만드는 거죠. 기존의 CTI H/W 드라이버와 같이 동작해야 해서, 시스템 서비스에다가 집어넣고 있는데, 이게 디버깅 하기가 영 까다롭군요.
그래서 이런 서비스를 개발할때나 특수하게 디버깅이 불가능한 상황에 사용하는 유틸리티가 바로 DebugView입니다. SysInternals 에서 제공하는 프리웨어 이구요. Debug Output 을 잡아내서 자신의 창에 뿌려주는 역할을 합니다.
이런 화면을 제공하구요. 소스코드내에서는 OutputDebugString API 를 이용해서 그냥 출력해 주면 됩니다.
VOID OutputDebugString(
LPCTSTR lpOutputString // 출력할 문자열
);