나는 BSoD를 직접적으로 피하는 드라이버를 가지고 있으며, Windows Vista의 화면을 여러 가지 색의 점들과 줄무늬가없는 검은 색으로 변하게합니다. 나중에 시스템에서 메모리 덤프를 찾고 DbgView가 멋지게 나에게 스택 추적을 표시합니다 (이 스택이 왜곡되어 있고 일부가 잘못되었을 수 있음을 나타냄). 안타깝게도, 스택에서 발견 된 명령은 분명히 모든 것을 무너 뜨리는 코드 부분에서는 보이지 않습니다. (전체 루틴은 그대로 둘 수 있지만, 그 부분은 생략 할 수 있습니다.)메모리 덤프의 DbgPrint?
외부 디버거에서 디버그 메시지를 읽으려면 메모리 덤프 또는 직렬 포트에서 디버그 메시지를 얻는 방법을 알고 있습니까? (디버거가 연결되어 있으면 테스트 시스템이 멈추지 만 원격 디버깅 방법과 이유에 대해서는 충분히 알지 못합니다.)
찾아보기 때문에 내 코드가 실패한 지점을 알고 싶습니다. 코드를 통해 나에게는 괜찮은 것처럼 보입니다. 조금 쓸데 없으며 힌트가 필요합니다.
감사합니다. 내 주요 문제로 밝혀졌다. 나는 "가라"를 충분히 누르지 않았다는 것이었다. 따라서 디버그 시스템에서 빈 디버거 창을 사용하여 테스트 시스템이 정지 된 것처럼 보였습니다. 쓸데없는 것 같아. (하지만 명령 목록은 매우 유용합니다.) 역 추적을 위해 k, kb, kp, kd을 추가하고 u, uf, ... 명령을 사용하여 역 어셈블을위한 명령을 추가합니다. –
또한 테스트 한 컴퓨터에서 DbgView를 실행해야합니다. 그렇지 않으면 내 DbgPrint가 커널 디버거에 표시되지 않기 때문입니다. 안타깝게도 Dbgview가 실행 중일 때 전체 설치가 멈추는 경우가 있습니다. 아마 호스트의 플래그를 켜야 만합니다 ... –
형식을 올바르게 가져올 수 있도록 답변을 설정에 추가했습니다. – Christopher