2011-05-10 5 views
1

WinDbg를 사용하여 실행 파일을 디버깅 할 때 디버깅 세션 전에 환경 변수를 설정하기 전에 실행될 배치 스크립트를 지정하는 방법이 있습니까?WinDbg 환경 변수

이 실행 파일이 실행되는 자동화 된 테스트 환경을 모방하려고합니다. 변수는 현재 빌드 번호, 결과 디렉토리 및 타사 도구 디렉토리의 위치와 같은 정보를 포함합니다. 내 자신의 테스트를 위해 응용 프로그램에 이러한 코드를 하드 코딩 할 수 있지만 추한 것입니다. :)

이것은 물론 Windows OS에 있으며 다른 디버거를 사용하지 않을 것입니다.

WinDbg에서 직접 지원하지 않는 경우이 기능을 구현하는 가장 좋은 방법은 무엇입니까?

답변

4

WinDbg의 -o 옵션을 사용하면 자동으로 모든 하위 프로세스에 연결되므로 다른 프로그램에서 시작된 프로그램을 디버깅하는 데 유용합니다. windbg -o cmd.exe /c myscript.bat을 실행하면 WinDbg는 cmd.exe (건너 뛸 수 있음)과 cmd.exe 인스턴스에 의해 생성 된 모든 하위 프로세스를 디버그합니다. 배치 파일이 디버깅 할 파일을 실행하기 전에 다른 많은 명령을 실행하지만 sx* 명령 (예 : sxn ibp; sxe ld:mymodule)이 성가심을 줄여야하는 경우에는 성가신 일입니다.

또 다른 방법은 EXE가 시작될 때마다 Image File Execution Options 레지스트리 키를 사용하여 WinDbg (또는 cdb/ntsd)를 첨부하는 것입니다.

+0

그게 좋습니다! 잘 작동하지만 cmd.exe를 건너 뛰는 것은 약간의 성가심이지만 가치가 있습니다. 감사합니다. – MichaelHouse