1

ホスト Win7_x64、ターゲット VM Win7_x64 の両方が同じ物理マシン上にあります。VS 2012 (Visual Studio Integrated Windows Debugger) を使用したドライバーのデバッグ。

VS 2012 と WDK 8.0 を使用して、ホストとターゲットの間でプロビジョニングできます。

msdn で指定された KmdfSmall ドライバーは、ターゲット VM に適切にインストールできます。最後のクエリに投稿されたように、デバイス マネージャーとターゲット VM に表示されます。

F5 を押すたびに、VS 2012 の「Debugger Immediate Window」にも「ブレークポイント ヒット」が表示され、メッセージで前述したように、KdPrintEx の戻り値も正しい、つまり STATUS_SUCCESS です。

「KdPrintEx」のメッセージを表示するためにVS 2012にいくつかの設定がありませんか?KdPrintEx((DPFLTR_IHVDRIVER_ID, DPFLTR_INFO_LEVEL, "\n KmdfSmallEvtDeviceAdd has been called\n"))「Debugger Immediate Window」にメッセージが出力されない理由を意味します。

4

2 に答える 2

0

KdPrintExリリース構成には影響しません。必ずデバッグ モードでコンパイルするか、DbgPrintEx.

于 2013-06-15T11:59:23.810 に答える
0

デバッグ用にドライバーがインストールされているターゲット マシンのコンポーネント フィルター マスクの値を変更しました。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Debug Print Filter.

このキーの下に、「IHVDRIVER」という名前の値を作成し、このキーの値を DWORD 値 0x8 に設定します。

KdPrintEx((DPFLTR_"IHVDRIVER"_ID, DPFLTR_INFO_LEVEL, "\n KmdfSmallEvtDeviceAdd has been called\n")) で "IHVDRIVER" を選択し、レベリングのために DWORD 値が 0x8 であるためです。

詳細: http://msdn.microsoft.com/en-us/library/windows/hardware/ff551519(v=vs.85).aspx

ありがとうございます

よろしくマット

于 2013-06-15T19:48:19.850 に答える