liuxingxx
驱动牛犊
驱动牛犊
  • 注册日期2007-06-12
  • 最后登录2008-11-17
  • 粉丝0
  • 关注0
  • 积分9分
  • 威望37点
  • 贡献值0点
  • 好评度28点
  • 原创分0分
  • 专家分0分
阅读:2097回复:9

被折磨得要疯了的女生求助:关于过滤驱动的一些问题,求高手指点

楼主#
更多 发布于:2007-06-26 17:07
已经看了两周了,越看越糊涂(觉得女生在这方面很欠缺,可能真的是不感兴趣),求高手指点:
开发中使用的工具和环境:
vc 6.0+2000ddk 用DbgViewer查看信息。
1、如何在注册表中的service中添加一项就能实现WDM Helloworld(不知道该怎么说,就是不需要真正挂到一个具体的设备上,比如Clss中的光驱或软驱的)
2、过滤不同的设备要关注不同的命令,我怎么能知道到底需要关注那些命令?比如过滤软驱,需要拦截哪些命令
3、我也看了ddk中toaster/filter程序,可是并没有看到SCSIIO类的命令,请问对于该类命令的判断是在IRP_MJ_INTERNAL_DEVICE_CONTROL中进行马?
4、哪里有关于SCSI命令的解释,实在不明白那么多命令都是干嘛的

由于是刚刚注册的,不知道有多少分可以送(目前也不知道怎么送分),希望大家能赐教,不胜感激

最新喜欢:

LeopardLeopar...
xikug
驱动小牛
驱动小牛
  • 注册日期2001-09-25
  • 最后登录2013-09-27
  • 粉丝1
  • 关注0
  • 积分1001分
  • 威望169点
  • 贡献值0点
  • 好评度168点
  • 原创分1分
  • 专家分0分
沙发#
发布于:2007-06-26 20:49
呼叫某人...快来折磨女生...
http://www.debugman.com
tianyu1977
驱动小牛
驱动小牛
  • 注册日期2007-03-10
  • 最后登录2011-01-29
  • 粉丝0
  • 关注0
  • 积分1003分
  • 威望121点
  • 贡献值0点
  • 好评度100点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-06-26 21:54
哈哈,,,,,,,我还是 女生呢, 折磨人可是不分性别的啊!
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
地板#
发布于:2007-06-27 08:10
1。 如果是说安装一般的driver,WDM用inf安装,Legacy用Service Manager或者inf安装。而filter driver一般都用Service Manager安装,关键点就是注册表中的UpperFilters和LowerFilters。所有的例子都在DDK中,用不同的keyword查找总能找到你要的

2。 主要是根据你要拦截的设备类型。可以从DDK的Device and Driver Technologies去查找,然后用IrpTracker或者WDMSniffer监控要过滤的设备,2者配合着研究,很快就会有眉目。src\storage\sfloppy是floppy的sample

3。yep。但是spti走的是IRP_MJ_DEVICE_CONTROL

4。去www.t10.orgwww.t13.org找自己需要的spec
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
liuxingxx
驱动牛犊
驱动牛犊
  • 注册日期2007-06-12
  • 最后登录2008-11-17
  • 粉丝0
  • 关注0
  • 积分9分
  • 威望37点
  • 贡献值0点
  • 好评度28点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2007-06-27 10:35
谢谢rayyang2000
下载了你推荐的工具
但是对软驱过滤时,只能看到IRP和IOCTL的命令
没有看到关于SCSI的相关指令
只是对光盘过滤时,Target Device中有显示Device\Scsi\...的项
请问有没有其他的方法可以看得更详细一些
谢谢
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2007-06-29 08:20
scsi命令嵌套在IRP_MJ_DEVICE_CONTROL/IRP_MJ_INTERNAL_DEVICE_CONTROL中对应的ioctl里面,这些工具不会给你解析这些信息,可以用BusHound/BusTrace/DevFilter得到这些信息。
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
liuxingxx
驱动牛犊
驱动牛犊
  • 注册日期2007-06-12
  • 最后登录2008-11-17
  • 粉丝0
  • 关注0
  • 积分9分
  • 威望37点
  • 贡献值0点
  • 好评度28点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2007-07-03 17:57
谢谢楼上
不过使用devfilter时发现了一个新问题,请赐教:
1、如果filfloppy是我为软盘驱动flpydisk加的lowerfilter(过滤驱动已在注册表clss及services中),那么我对flpydisk进行hook时,打开软盘,只存在IRP_MJ_DEVICE_CONTROL,但是如果我对过滤驱动filfloopy进行hook时,打开软盘,只存在IRP_MJ_INTERNAL_DEVICE_CONTROL,请问这种情况是什么原因

2、使用wdmsniffer对打开软驱进行检测时,发现有一项IOCTL_DISK_CHECK_VERIFY,但是在IRP_MJ_DEVICE_CONTROL中的Parameters.DeviceIoControl.IoControlCode该case项中添加打印语句后,发现并不执行,请问该IOCTL应该在那里来识别?IRP_MJ_INTERNAL_DEVICE_CONTROL马?

请牛人们多指教,新手,问题太水请见谅
wisebo
驱动小牛
驱动小牛
  • 注册日期2006-04-13
  • 最后登录2012-07-18
  • 粉丝0
  • 关注1
  • 积分825分
  • 威望218点
  • 贡献值0点
  • 好评度80点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2007-07-04 19:24
我现在也在 学习文件系统的过滤驱动开发,楼上的主要是想实现什么功能呢?我们可以交流。
我的邮箱是wiseboy601710@163.com
I love niu
ProPlayboy
驱动大牛
驱动大牛
  • 注册日期2005-07-07
  • 最后登录2022-02-15
  • 粉丝0
  • 关注0
  • 积分1016分
  • 威望811点
  • 贡献值0点
  • 好评度719点
  • 原创分0分
  • 专家分0分
  • 社区居民
8楼#
发布于:2007-07-05 00:59
...下次我提问,我也说。。。俺是一只被折磨得快疯的母性。。。猴子。。。被折磨不分公和母的。。。
人不靓仔心灵美,版头不正红花仔!
ProPlayboy
驱动大牛
驱动大牛
  • 注册日期2005-07-07
  • 最后登录2022-02-15
  • 粉丝0
  • 关注0
  • 积分1016分
  • 威望811点
  • 贡献值0点
  • 好评度719点
  • 原创分0分
  • 专家分0分
  • 社区居民
9楼#
发布于:2007-07-05 01:00
而实际上,我是公的。。
人不靓仔心灵美,版头不正红花仔!
游客

返回顶部