无法通过网络调试Windows驱动程序

时间:2017-12-05 06:28:16

标签: windows visual-studio wdk kmdf

我正在使用VS 2015学习Windows驱动程序开发.code&编译好了。 但我无法通过网络在目标机器上进行调试 这是vs的输出:
    -------------------------------------------------- --------------
    [22:12:32:074]:收集内核调试器设置
    [22:12:32:080]:从测试执行文件夹中删除任何现有文件     [22:12:32:446]:复制“收集内核调试器设置”所需的文件     [22:12:37:967]:[收集内核调试器设置]命令行:     $ KitRoot $ \ Testing \ Runtimes \ TAEF \ te.exe“%SystemDrive%\ DriverTest \ Run \ DriverTestTasks.dll”/ select:“@ Name ='DriverTestTasks :: _ LogDebuggerSettings'”/ rebootStateFile:%SystemDrive%\ DriverTest \ Run \ DriverTestReboot.xml / enableWttLogging /wttDeviceString:$LogFile:file="%SystemDrive%\DriverTest\Run\Gathering_kernel_debugger_settings_00013.wtl",writemode=append,encoding=unicode,nofscache=true,EnableLvl="WexStartTest|WexEndTest|WexXml|WexProperty | WexCreateContext | WexCloseContext | *“/ runas:Elevated
    [22:12:41:624]:结果摘要:总计= 1,通过= 1,失败= 0,被阻止= 0,警告= 0,跳过= 0     [22:12:41:624]:任务“收集内核调试器设置”成功完成了

-------------------------------------------------------------------------

然后我收到警报: “无法创建流程实例阻止调试” 然后什么也没发生。

如何在目标机器上调试我的驱动程序? 非常感谢!

1 个答案:

答案 0 :(得分:0)

Visual Studio用于远程内核模式调试您自己的设备驱动程序有时会非常痛苦;我见过许多经验丰富的内核模式工程师在过去试图让它工作时不再浪费时间。

确保您在目标计算机上安装了与在主机上安装的Windows驱动程序工具包(WDK)相同的版本。然后再试一次,看看是否能解决问题。您还需要确保已登录到WDK用户帐户,该帐户是在目标计算机配置开始时自动创建的,以及从启动时启用的调试模式。

如果你在最多一周后无法正常工作,你也可以不用再浪费时间了。您可以使用WinDbg(作为调试工具的一部分附带Windows驱动程序工具包 - Visual Studio使用WinDbg引擎进行调试)来远程调试目标机器的内核,您也可以使用它来设置断点/分析你自己的设备驱动程序您只需编译源代码并每次手动将已编译的驱动程序复制到目标计算机,由于网络/虚拟机上的共享文件夹功能,这一点并不是那么糟糕。