birdtomaster
驱动牛犊
驱动牛犊
  • 注册日期2003-10-03
  • 最后登录2008-09-07
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
阅读:1918回复:5

为何过写操作被滤后word文档被锁定

楼主#
更多 发布于:2004-08-01 20:52
    在filemon中,直接拒绝任何操作在IRP_MJ_CREATE 中返回一点问题都没有,但是我只读不写在word、accees等就有问题了,因为读和写开始都是IRP_MJ_CREATE,我不知道如何判断这个IRP_MJ_CREATE是读还是写时产生的,只好在其它地方加过滤代码,只在IRP_MJ_WRITE中返回不能起作用,还在IRP_MJ_QUERY_INFORMATION、IRP_MJ_SET_INFORMATION、IRP_MJ_CLEANUP、IRP_MJ_CLOSE中都加入
if(  writerefuse==1) {
Irp->IoStatus.Status=STATUS_INVALID_DEVICE_REQUEST;
Irp->IoStatus.Information=0;
IoCompleteRequest(Irp,IO_NO_INCREMENT);
return STATUS_INVALID_DEVICE_REQUEST;
虽然word等文档能读不能写,但是出现了以下问题:
1、保存是保存不了,但是直接关闭以后在打开就不能打开了,说文件被锁定,另一个程序正在使用,通知、只读都不行??????
2、从应用程序更改过滤规则将只读改为可以读写,仍然如此,请教一下这是为什么?是不是在写时产生IRP_MJ_CREATE,就被锁定了,如何释放,或者能否在IRP_MJ_CREATE时判断时写就不让IRP_MJ_CREATE?请大侠指点,谢了

[编辑 -  8/1/04 by  birdtomaster]
zhangc98
驱动牛犊
驱动牛犊
  • 注册日期2002-03-30
  • 最后登录2004-10-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-08-02 13:58
你试试在set_infomation的时候不是把所有的都返回,
仅仅是把rename的部分返回。

因为word的修改是通过把原来的删除,将临时文件改名的方法来实现的,所以把改名禁止的话,应该可以保证不能写入吧?呵呵:)

还有,不知道有没有人知道删除一个文件或者文件夹的处理过程是什么样啊?删除到回收站和彻底删除有什么不同阿?另外如何在CREATE里面判断到底是新建的文件夹或者文件夹还是原来已有的?多谢:)

目前:新手上路; 目标:高级站友; 理想:开国大佬; 方法:自己的努力+大家的关照!
birdtomaster
驱动牛犊
驱动牛犊
  • 注册日期2003-10-03
  • 最后登录2008-09-07
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-08-07 00:04
你试试

 

现在是word文档拦截写后,取消拦截再打开显示为只读了,可能也是这个问题,如何在set_infomation的时候不是把所有的都返回,
仅仅是把rename的部分返回?能详细点吗?谢谢

[编辑 -  8/7/04 by  birdtomaster]
zhangc98
驱动牛犊
驱动牛犊
  • 注册日期2002-03-30
  • 最后登录2004-10-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-08-10 15:42
这个你查看一下IFS的文档,
里面关于IRP_MJ_SET_INFOMATION的部分,
有比较详细的说明。

set infomation的时候应该就是那么几种情况,
其中有一个是关于rename的,
其它几种是关于文件大小/结束设置/位置设置之类的。
目前:新手上路; 目标:高级站友; 理想:开国大佬; 方法:自己的努力+大家的关照!
birdtomaster
驱动牛犊
驱动牛犊
  • 注册日期2003-10-03
  • 最后登录2008-09-07
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-08-11 22:48
很遗憾,我没有IFS Kit和相关文档,本站下过,分扣了,没有结果,由两个帐号,另外一个下ddk xp一样的结果
keep_love
驱动牛犊
驱动牛犊
  • 注册日期2004-08-11
  • 最后登录2004-08-12
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-08-12 10:54
下到了,使用北大的天网搜索引擎,一下就收出很多,原来教育网用这个比较好使,什么IFS 2k/xp DDK xp 都下了 :D
游客

返回顶部