bj751212
驱动牛犊
驱动牛犊
  • 注册日期2004-10-11
  • 最后登录2005-04-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1496回复:1

IoGetRelatedDeviceObject挂接设备的疑问?

楼主#
更多 发布于:2004-11-16 14:05
我要遍写禁用CDROM的驱动,有方法如下:
基本上就是用IoGetRelatedDeviceObject挂接设备
fileSysDevice = IoGetRelatedDeviceObject( fileObject );
pDriverObject = fileSysDevice->DriverObject;

然后拦截此DriverObject的IRP_MJ_CREATE、IRP_MJ_SET_INFORMATION、IRP_MJ_DEVICE_CONTROL

疑问1:fileObject如何得到,(也就是CDROM的)
疑问2:上面的代码是加在DriverEntry中的吧,那还要指定
      AddDevice吗?AddDevice中需指定FILE_DEVICE_CD_ROM吗?
本人刚用DDK,请高手不要见笑
GeorgeSun
驱动牛犊
驱动牛犊
  • 注册日期2003-10-08
  • 最后登录2007-06-18
  • 粉丝0
  • 关注0
  • 积分32分
  • 威望7点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-11-16 14:14
我也有相同的疑问,DDK中有个filter的例子,但不知道如何使用,用它的FILTJECT.DLL 来用的话,devname是什么啊,是光驱在系统中的名字吗,这个名字好象使用winobj工具可以看,不知道是哪一项,如果要过滤IRP请求,在DispatchAny该如何做呢?
可不可以直接在DispatchAny中过滤对光驱的请求,然后加载.sys驱动,而不用他的FILTJECT.DLL?那位大虾可以指教?不胜感激!
 :(
虚心学习中......
游客

返回顶部