社区
C++ 语言
帖子详情
发送irp_mn_remove_device实现U盘退出的问题
sparrow17
2014-06-24 02:04:00
最近想在内核中实现弹出U盘的效果,做法是像usbhub下的设备发送irp_mn_remove_device的pnp请求,发送后的效果是U盘里的东西都不显示了,但是盘符还在,并且没有提示,想问下怎么完整实现弹出U盘的效果,起码让盘符消失。
说明:后来重启后还有修复U盘的过程,就是chkdsk,应该是不正常退出的问题,就是说只发送这个irp不够完整。
...全文
193
1
打赏
收藏
发送irp_mn_remove_device实现U盘退出的问题
最近想在内核中实现弹出U盘的效果,做法是像usbhub下的设备发送irp_mn_remove_device的pnp请求,发送后的效果是U盘里的东西都不显示了,但是盘符还在,并且没有提示,想问下怎么完整实现弹出U盘的效果,起码让盘符消失。 说明:后来重启后还有修复U盘的过程,就是chkdsk,应该是不正常退出的问题,就是说只发送这个irp不够完整。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
赵4老师
2014-06-25
打赏
举报
回复
帮结帖!
sparrow17
2014-06-25
打赏
举报
回复
找了一天找到方法了,直接用IoRequestDeviceEject函数就可以了。
Windows驱动开发技术详解的光盘-part1
4.3.5 对
IRP
_
MN
_
REMOVE
_
DEVICE
IRP
的处理 4.3.6 用
Device
Tree查看WDM设备对象栈 4.4 设备的层次结构 4.4.1 驱动程序的垂直层次结构 4.4.2 驱动程序的水平层次结构 4.4.3 驱动程序的复杂层次结构 ...
windows驱动开发技术详解-part2
4.3.5 对
IRP
_
MN
_
REMOVE
_
DEVICE
IRP
的处理 4.3.6 用
Device
Tree查看WDM设备对象栈 4.4 设备的层次结构 4.4.1 驱动程序的垂直层次结构 4.4.2 驱动程序的水平层次结构 4.4.3 驱动程序的复杂层次结构 ...
Windows驱动开发系列之一:小白入门经典
灵活应用
IRP
、IO堆栈、设备栈、派遣函数等; 您将掌握Windows驱动的分层技术,了解WDM驱动的基本原理 您将掌握Windows驱动开发中的各种回调例程:完成例程、取消例程、DPC例程、APC例程、等等。 具体内容包括但不...
41、过滤驱动程序
过滤驱动程序可以修改已有驱动的功能,也可以对数据进行过滤加密。WDM驱动需要通过注册表记录指定加裁的... 过滤驱动的入口函数需要将所有的
IRP
都设置派遣例程,因为过滤驱动要保证所有上层传递下来的
IRP
都能...
WDM Filter 驱动的一点基础知识
WDM Filter是一类驱动的总称,它把自己挂载到功能设备(FDO)之下或者之上,拦截所有的
IRP
,对这些
IRP
分析处理,从而达到过滤的目的。 它跟 NT式过滤驱动都是一样的目的,比如前面文章讲到的TDI Filter驱动就是个标准...
C++ 语言
64,643
社区成员
250,606
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章