1.调试对象

在这里插入图片描述

将一个程序拖拽进OD中,这种方式是通过 CreateProcess() 建立联系的。

程序正在运行中通过OD附加程序,这种方式是通过 DebugActiveProcess() 建立联系的。

DebugActiveProcess执行流程

<1> kernel32! DbaUiConnectToDbg()

  1. ntdll! DbgUiConnectToDbg()
  2. ntdll! ZwCreateDebugObject()
  3. ntoskrnl! NtCreateDebugObject()

<2> kerel32! DbgUiDebugActiveProcess(被调试进程句柄)

  1. ntdll! DbgUiDebugActiveProcess(被调试进程句柄)
  2. ntdll! DebugActiveProcess(被调试进程句柄调试器进程TEB+0xF24)
  3. ntdll! DebugActiveProcess(HANDLE ProcessHandle, HANDLE DebugObjectHandle)

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

打开ntdll

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
根据你的产品需求,你可以按照以下步骤来实现调试工具和透传工具: 1. 确定开发平台:选择一个适合你的开发平台,比如嵌入式Linux、Arduino、Raspberry Pi等。 2. 串口通信:使用串口库来实现串口数据的读写操作。考虑支持TTL、RS232、RS485等接口类型。你可以创建一个串口类,封装串口的打开、关闭、发送和接收等功能。 3. 透传工具:实现透传功能,即将来自一个串口的数据直接传输到另一个串口。你可以创建两个串口对象,分别负责读取一个串口的数据并将其写入另一个串口。 4. 供电方式:透传工具应支持由目标设备供电或外部单独供电。你可以设计一个电源管理模块,以支持两种供电方式。 5. 数据记录存储:调试工具和透传工具都应具备串口数据记录存储的能力。你可以使用外接TF卡,并使用文件系统进行存储。 6. 通信方式:调试工具和透传工具之间通过4G或WiFi通信,并需要具备可以显示通信状态的指示灯。你可以使用相应的无线模块来实现通信功能。 7. 参数配置:调试工具和透传工具可通过WiFi或蓝牙进行参数配置。你可以选择相应的无线模块,并实现配置功能。 8. 用户界面:调试工具应具有屏幕显示和触摸的功能,且能通过键盘输入。你可以选择合适的显示屏和触摸屏,并实现相应的用户界面。 9. 电池和充电:调试工具应具有较大容量电池,并支持TYPE-C接口充电。你可以选择合适的电池和充电模块,并进行相应的电源管理。 10. 按键和指示灯:调试工具除开关机按键外,还应具备蜂鸣器和其他必要的按键输入的功能。你可以设计按键和指示灯的布局,并实现相应的功能。 11. 大小设计:调试工具的大小设计应在携带便利、待机时间和显示效果等方面综合考虑。你可以进行尺寸规划和外壳设计,以满足产品要求。 在实施过程中,你可能需要选择适当的硬件模块、开发工具和相应的库来实现各个功能。同时,进行充分的测试和验证以确保产品的性能和稳定性。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值