我是Windows驱动程序开发的总菜鸟,最近我被分配了一个项目来开发Windows 10和8.1的驱动程序
我有一台装有Windows 8.1和Visual Studio 2017的电脑。我有WinDbg。我曾尝试进行本地调试,但我没有成功,在某处建议不要将其作为限制。
以最少的麻烦进行内核驱动程序开发的最佳设置是什么。
Os loader是否适用于Windows 8.1?
在推进之前我需要记住哪些事情?
我可以使用Windows 7作为目标,并为Windows 10开发和调试驱动程序吗?在this链接上,它说Windows 7有关于WDK测试目标设置的错误。
我在微软论坛上发布了类似的问题,但还没有答案,这只是第一步。
答案 0 :(得分:0)
我到达这里。使用此来源https://www.codemetrix.net/windows-kernel-debugging-setup/
<强>环境强> 在BIOS中启用VT-d以安装64位操作系统
Windows 10不需要许可证,Windows 8.1需要使用这个Windows 10。
Windows 8.1 64位主机。
windows 10 64位目标在virtualbox中。
安装完Windows 10后,转到设备 - &gt;运行插入客户添加CD映像。在此之后启用拖放。
在主机上安装visual studio 2017。所有工具都将随之安装。
64位WinDbg的路径
C:\ ProgramData \ Microsoft \ Windows \ Start Menu \ Programs \ Windows Kits \ Windows调试工具(X64)
查找WinDbg(通常在路径上方)并获取目标的VirtualBox图像 - 称为“Debuggee” - 安装在VirtualBox中。然后打开虚拟机配置并激活串行端口(COM1)。
重要的部分是主机和目标之间的串行连接。
在“串行端口”配置中,选择端口号COM1 ,端口模式“主机管道”,然后选择路径名称,即的 \。\管\ windebugpipe 即可。 (您可以在此处用另一个名称替换'windebugpipe',但在以下步骤中保持一致,并确保保留\。\ pipe \前缀。)取消选中“连接到现有管道/套接字”框强>
现在,在主机上,还以管理员身份打开命令提示符并启动WinDbg。
Windbg -b -k com:pipe,port = \。\ pipe \ windebugpipe,resets = 0,重新连接
请注意,port参数应与VM设置中的路径匹配。 WinDbg现在正在等待与调试对象的连接。
重新启动虚拟机。 VM应该连接到您的调试器。调试器可能已经在启动过程中启动并在窗口仍在启动时停止VM,因此如果停止加载则不要烦恼。按“g”并在调试器命令提示符下输入,让Windows继续启动。如果调试器第一次没有启动,请尝试重新启动VM
搞清楚这个 在我的情况下,调试器正忙于处理此命令,并且VM已中途停止。所以要弄清楚还能做些什么。
等待20分钟,直到Windows 10 VM启动。在WinDbg命令提示符下,我看到了这一点 KDTARGET:刷新KD连接
也许连接丢失了。