2011-08-03 5 views
3

나는 지금 IFS Kit를 사용하여 Windows 7에서 미니 필터를 작성하고 디버깅하고 있습니다. 그것은 마침내 작동하지만 더 많은 기능을 추가해야 할 때 더 이상 며칠을 가지고 놀 것입니다.디버깅 미니 파일

디버깅에 대해 걱정하고 있습니다. 지금까지 드라이버를 간단하게 빌드하고 가상 상자에 설치 한 다음 dbg_print 문을 확인하여 테스트했습니다. 나는 좀 더 구조화되고 프로그래밍 방식으로 미니 필터를 디버깅하는 방법을 찾을 수 없었기 때문에이 간단하고 오류가 발생하기 쉬운 방법을 사용 해왔다.

미니 필터 또는 필터를 디버깅하는 모범 사례가 있습니까? visualDDK를 사용하여 미니 필터 용 비주얼 스튜디오에 (원격) 디버깅 기능을 추가 할 수 있습니까?

인사, 호기심 커널 모드에서 디버깅을 지원하지 않습니다

답변

1

비주얼 스튜디오. Windows DDK에 포함 된 디버거 패키지의 일부인 kd 또는 WinDbg를 사용할 수 있습니다. 그러면 디버깅을 시작할 수 있습니다 :

  • VM에서 커널 디버거를 구성하고 WinDbg를 연결하십시오. 안내는 여기에 있습니다 : http://ndis.com/ndis-debugging/virtual/vmwaresetup.htm.
  • 바이너리를 디버그 모드로 빌드하십시오 (또는 전체 기호가있는 릴리스에서 빌드하십시오).
  • 일단 WinDbg가 연결되면 fix up symbolssource path입니다. 새 드라이버의 심볼 위치를 심볼 경로에 추가했는지 확인하십시오.
  • 이제 사용자 모드 응용 프로그램에 대해 VS를 사용하는 것과 비슷한 방법으로 디버깅 할 수 있습니다.
2

윈도우 DDK로 사용할 수 있습니다 windbg를의 사본 적절한 구성으로 명명 된 파이프를 통해 VM에 연결이 포함되어 있습니다.

당신은 윈도우에 포함 된 커널 디버거 얘기 채널을 가속화 얻을 VirtualKD를 사용하여 하나가 더 잘 할 수 있습니다. 당신은 Visual Studio 사용자 인터페이스를 사용하여 디버깅 을 수행 할 경우

, 당신은 VisualDDK 봐야한다.

두 가지 모두 강력한 도구이지만 처음 설치하는 데 약간의 작업이 필요합니다.

가 나는 등

임의 품질 보증 시스템에 설정할 수있는 가장 쉬운 방법이기 때문에 단지 에게 WinDBG에서를 사용하는 경향이하지만 프로젝트의 초기 개발 과정에서 빠르게 반복하는 이러한 도구를 사용하고 있습니다.

행운을 비네.