2009-03-19 8 views
1

프로세스를 실행하고 디버그하는 최소한의 디버그 루프를 만들었습니다.종료 된 정지 응용 프로그램 감지

프로세스가 중단되고 사용자가 프로세스를 닫으려고하면 Windows는 메시지 상자에 대기 또는 종료 옵션을 제공합니다. 나는 그들이 지금 끝낼 때를 감지하려고 노력하고 싶다. 그래서 디버거가 관련 정보를 수집 할 수있다. 그러나 나는이 상황을 감지하는 방법을 알아낼 수 없습니다. 스레드 및 프로세스 종료 코드는 0으로 유지됩니다. 한 번에 0xCFFFFFFF를 반환한다고 생각했지만 더 이상 발생하지 않습니다.

또는 Dr. Watson과 같이 응용 프로그램을 닫은 후에이 디버거를 실행하기 위해 수정할 수있는 레지스트리 항목이있을 수 있습니다. 아마 그것은 내 컴퓨터 일 뿐이지 만, 정지 된 응용 프로그램을 종료 할 때 디버거 (VS JIT 디버그, Dr. Watson 등)를 실행할 수있는 것 같지 않습니다.

이전에 HUNGAPP 덤프를 보았 기 때문에 어떻게 든 가능해야한다는 것을 알고 있습니다.

감사합니다.

답변

1

해당 항목에 대해 msdn blog series이 있는데, Windows가 충돌을 처리하는 방법을 설명합니다.

0

WinDbg와 동일한 목적으로 응용 프로그램을 실행할 수 있으며 응용 프로그램이 멈 추면 덤프 파일이 생성됩니다.