2009-03-09 2 views
2

이상한 상황 : VSTO Office Addin을 디버그해야합니다. 이것은 Visual Studio 2008 Professional로 작성되었으며 디버깅은 일반적으로 프로젝트로드, Outlook.exe에 연결 및 중단 점 설정으로 수행됩니다.호환되지 않는 Visual Studio에서 .pdb로 디버그하십시오.

하지만 한 대의 컴퓨터에서 예상대로 작동하지 않지만 VS2008 Pro가 해당 컴퓨터에 없습니다 (단, Express가 도움이되지만 Express는 프로젝트 유형이 지원되지 않으므로 프로젝트를로드하지 않습니다)), 원격 디버거를 사용할 기회가 없습니다.

.pdb 파일, 소스 코드 및 .dll에 사용 된 "무장"상태이므로 프로젝트를로드하지 않고도 여전히 디버깅 할 수 있는지 궁금합니다.

편집 : 분명히하기 위해 예외적 인 것은 아니지만, else 블록으로 들어가는 if/else 블록입니다. 중단 점을 설정하고 .net 변수를 검사해야 할 수도 있습니다.

답변

2

WinDbg에서이 작업을 수행 할 수 있지만 사용자에게 친숙하지는 않습니다.

+0

WinDbd + SOS를 사용하여 관리되는 변수의 값을 어떻게 변경 하시겠습니까? 이것은 OP가해야 할 일입니다. – Constantin

1

예외를 호출 스택에 기록하면 행 번호와 소스 파일이 생깁니다. 컴퓨터에 새 코드를 배포 할 수있는 경우 추가 로깅/추적을 코드에 넣으십시오.

이 작업을 수행하지 않으면 WinDbg를 사용하여 메모리 덤프를 검사하고 SOS Debugging Extension을 사용하십시오.

편집 : Hawkeye.Net이 (가) 도움이 될 수 있습니다.

2

다른 간단한 트릭 : 코드 (System.Diagnostics.Trace)에 추적 메시지를 추가하십시오. Sysinternals/MS에서 DbgView을 사용하여 모든 추적 메시지를 모니터 할 수 있습니다.

코드를 단계별로 실행할 수는 없지만 디버거를 사용할 수없는 대상 시스템의 문제를 분석 할 때 매우 유용합니다. 고객 사이트에서.

관련 문제