2009-04-03 7 views
0

액세스 할 수없는 컴퓨터에서 일부 문제를 해결하려고합니다. 문제는 매우 간헐적이며 지역에서 재현하는 것이 불가능합니다. WinDbg를 설치하도록 요청하고 있으므로 스택 추적/프로세스 덤프를 생성 할 수 있습니다. 이것이 최선의 방법입니까? 이와 같은 문제의 최하층에 도달하기 위해 어떤 접근 방식을 사용 했습니까?원격으로 문제 해결

답변

0

필자는 WinDbg에 포함 된 cdb.exe를 사용하여 필요한 덤프를 생성하는 .bat 파일을 작성했습니다. 그것은 완벽하게 작동하고 원격 기계를 만질 필요가 없습니다. 더 나은 점은 사용자가 기술적 지식을 필요로하지 않는다는 것입니다. WinDbg를 설치하고 .bat 파일을 실행하십시오.

0

Windows 시스템에서 작업하는 경우 다른 컴퓨터의 소유자에게 컴퓨터 원격 데스크톱 액세스를 허용하도록 요청할 수 있습니다. 그렇게하면 자신의 시스템처럼 다른 시스템의 모든 세부 사항에 액세스 할 수 있습니다. 리눅스 머신에서 작업하는 경우, 다른 머신의 소유자가 ssh 액세스 권한을 부여하고 사용자 이름과 비밀번호를 알려줘야하는 ssh 클라이언트를 통해 다른 머신의 명령 행에 액세스 할 수 있습니다. 루트 암호를 묻는 것만으로도 리눅스 시스템에서 가장 강력한 다른 시스템의 명령 줄에서 작업 할 수 있습니다. 당신이 당신의 코드와 윈도우로 구축 할 수있는 경우

0

을 시도, 당신은 충돌 때 자동 크래시 덤프를 생성있을 수 있습니다. 그렇게하려면 자체 예외 핸들러를 작성하고 SetUnhandledExceptionFilter API 함수를 사용하여 예외 핸들러에 연결해야합니다. 그런 다음 처리기가 MiniDumpWriteDump를 호출하여 미니 덤프를 작성할 수 있습니다. 사용자가 미니 덤프를 보내면이를 windbg에로드하고 스택 추적 및 기타 정보 (행운과 함께)를 얻을 수 있습니다.

나는 그것을 성공적으로 과거에 사용했지만, 까다 롭습니다. 특히, 컴퓨터의 컴파일 된 기호는 분산 빌드에 있었던 기호 여야합니다.

+0

아쉽게도 응용 프로그램이 멈추거나 충돌하지 않습니다. –

+0

언제든지 미니 덤프를 호출 할 수 있습니다 (충돌 할 필요는 없습니다). 키 스트로크 또는 다른 이벤트에 연결할 수 있습니까? –