32位/64位WINDOWS驱动之windbg双机调试

一、32位/64位WINDOWS驱动之windbg双机调试

windbg双机调试环境配置
第一步关掉虚拟机
如果有打印机请移除打印机(打印机会占用端口)
在这里插入图片描述
添加-添加串行端口-完成
在这里插入图片描述
选择使用命名的通道-名字为 \.\pipe\abc123(对应下面的COM1) -确定-在开启虚拟机
在这里插入图片描述
在虚拟机命令行里面输入 msconfig 来到系统配置 -引导-第二个高级选项 -勾选调试-勾选调试窗口-选择COM1;-确认-重新启动-启动的时候选择下面的调试系统

在这里插入图片描述
在这里插入图片描述
来到自己电脑系统搜索windbg
在这里插入图片描述
发送到桌面快捷方式 -打开-在File-Kernel Debugging

方法一:菜单配置法

在这里插入图片描述
-COM-Pipe勾选-Reconnect勾选 -Port 对应上你刚刚取得名字\.\pipe\abc123-确定-然后等待连接就可以了。

在这里插入图片描述
重启虚拟机-选择调试虚拟机-windbg里面点一下中断
在这里插入图片描述
这样子就连上了
在这里插入图片描述
让他运行起来 Kd 输入行里面输入g 回车 就运行起来了(不然虚拟机是一直卡着的状态)

在这里插入图片描述

方法二:windbg 双机调试
-b -k com:pipe,port=\.\pipe\abc123,resets=0,reconnect -y (-b前面还有一个空格)

Windbg -属性 目标-把路径复制出来,把参数加上
“D:\Windows Kits\10\Debuggers\x64\windbg.exe” -b -k com:pipe,port=\.\pipe\abc123,resets=0,reconnect -y (名字要和你取得名字对应上)

然后复制进目标路径里面-应用-确定

在这里插入图片描述
重新启动虚拟机 -让他运行起来 Kd 输入行里面输入g 回车 就运行起来了(不然虚拟机是一直卡着的状态)

在这里插入图片描述

二、备份源码方法

通过修改资源文件来备份代码
修改工具 Notepad
驱动源文件资源修改
复制一份文件,改成最新名称
.vcxproj .vcxproj.user .vcxproj.filters 修改这三种后缀的名字为新名称

D0019-20.vcxproj这个后缀的文件用 Notepad 打开 找到关键字

在这里插入图片描述
去把他全部替换成最新的名字即可-保存

在这里插入图片描述
项目里面添加现有项目-选择这个文件添加进去即可-生成一下看看是否生成成功,成功说明就改好了。

在这里插入图片描述

通过修改资源文件来备份代码
修改工具 Notepad
MFC源码文件资源修改
复制一份文件,改成最新名称
.vcxproj .vcxproj.user .vcxproj.filters .rc 修改这四种后缀的名字为新名称

在这里插入图片描述
res文件夹下的 .rc2 文件改成新名称

在这里插入图片描述
[D0019-20MFC.rc]这个后缀的文件用 Notepad 打开 找到关键字
在这里插入图片描述
去把他全部替换成最新的名字即可-保存

D0019_20MFC.vcxproj这个后缀的文件用 Notepad 打开 找到关键字

在这里插入图片描述去把他全部替换成最新的名字即可-保存

项目里面添加现有项目-选择这个文件添加进去即可-生成一下看看是否生成成功,成功说明就改好了。

在这里插入图片描述
在这里插入图片描述

三、WinDbg不显示调试信息原因分析

虚拟机中加载驱动-WinDbg调试信息,解决方法在虚拟机里面也开启调试工具进行监控
(Dbgview)WinDbg就会显示信息 了,原因可能是WinDbg自身的原因
解决后的截图

在这里插入图片描述

四、分析对进程名进行保护代码蓝屏原因

#define DbgBreakPoint __debugbreak

windbg的使用和常用命令
https://www.cnblogs.com/zrhai/p/3881431.html

windbg的使用和常用命令
https://www.cnblogs.com/yilang/p/11459091.html

windbg的使用和常用命令
https://blog.csdn.net/chenyujing1234/article/details/7743460

windbg的使用和常用命令
https://blog.csdn.net/qwertyupoiuytr/article/details/53999563

WinDbg常用指令
T 指令单步执行
g继续
标准命令:
控制调试目标:g/t/p(stepover)
返回上一层

  1. 其它命令bl bc bd be .bpcmds
    bl 列举所有断点和它们的状态
    bc 删除对应断点
    bd 禁用对应断点
    be 启用对应断点
    .bmcmds 列举所有断点以及创建它们的命令
  • 16
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

a756598009

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值