본문 바로가기

운동하는 개발자/Delphi

델파이 서비스 디버깅 / delphi service deburgging

728x90

윈도우10, 델파이 2010기준으로 설명되었습니다


TMI 내 이야기

더보기

회사 프로젝트 중 윈도우 서비스 프로젝트가 있는데 특정 문제가 있어서 확인이 필요한 상황이였다
로그로 찍긴 한계가 있고 디버깅을 꼭 해보고 싶다 하는 경우가 있었다

구글링을 해보니 windowsXP나 이전 버전에서는 서비스가 간단히 디버깅하도록 지원하였는데 
현재 윈도우7도 서비스가 종료된 마당에 XP가 웬말인가..

더 찾아보니 다행히 디버깅방법이 있었다

 

서비스를 빌드해서 서비스로 등록시킨 뒤 시작 시킵니다

그 프로젝트에서 Run-> Attach to Process를 누릅니다

 

위 사진과 같이 실행중인 프로세스 목록이 뜨는데 여기서 찾아서 Attach를 할 경우 서비스도 디버깅이 가능하고

브레이크 포인트도 걸립니다

다만! 서비스가 이미 시작된 이후기에 ServiceStart 부분은 이미 지나가버려 보기 어려울 수 있습니다
시작하자마자 한 10초 sleep를 주고 후딱 연결하면 될꺼같기도 한데 해보진 않았습니다..

서비스나 멀티스레드 특성상 브레이크 포인트를 한다고 모든 프로세스가 멈춘다기보다 이 때 이값을 가지고 있다 정도만 참고하시면 될 것 같습니다


틀린내용이나 질문은 댓글로 남겨주세요

728x90