cdriver
驱动牛犊
驱动牛犊
  • 注册日期2003-05-26
  • 最后登录2003-08-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1781回复:5

关于如何拒绝用户对指定文件或目录访问的问题

楼主#
更多 发布于:2003-06-03 13:34
偶才开始研究,请大家指教。

先说说我的思路:

在 filter driver 启动后, application 通过DeviceIOConftrol告诉 filter driver 用户不能访问的文件,filter driver 根据这些信息建立一个拒绝访问文件列表,这样,当 filter driver 处理 IRP_MJ_CREATE IRP 的时候,通过 IoCancelFileOpen 来拒绝对文件的操作。

我想问的是,上面的思路可行不可行?有什么细节要注意的?如果要在当用户访问特定文件或文件夹的时候,弹出对话框“拒绝访问”(操作系统自己的),在 filter 里可以实现吗?IoCancelFileOpen 反应到应用程序是什么结果,会出现错误吗?
sunxinwei
驱动牛犊
驱动牛犊
  • 注册日期2003-04-16
  • 最后登录2003-07-18
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-06-04 03:33
应该可行呀。
IoCancelFileOpen只是把已经打开的object关闭,没有返回值。你在irp的返回值里制定你要的返回结果。
弹出对话框恐怕没法直接做到,只能想别的办法吧。
cdriver
驱动牛犊
驱动牛犊
  • 注册日期2003-05-26
  • 最后登录2003-08-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-06-04 11:01
还有就是拒绝用户对文件的访问我应该处理哪些 IRP 呢?
同时又不在对文件点右键(好像也要对文件进行一些什么操作噢?)的时候出错?
总的来说就是只有对文件进行读取数据的时候才拒绝,其它的时候可以,是不是只要处理 IRP_MJ_READ?

IRP_MJ_CREATE 到底是干什么的呢?读文件时是用 IRP_MJ_READ 还是 IRP_MJ_CREATE 呢?呵呵,问题水了一点。
newkey
驱动小牛
驱动小牛
  • 注册日期2002-10-03
  • 最后登录2013-10-13
  • 粉丝1
  • 关注0
  • 积分45分
  • 威望392点
  • 贡献值1点
  • 好评度90点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-06-04 12:35
研究 filemon 代码

要 弹出 对话筐, 可能要 drive 回调, 在 exe 中来弹出对话筐

我也是新手

也想知道你上面的问题

www.xDrv.com
cdriver
驱动牛犊
驱动牛犊
  • 注册日期2003-05-26
  • 最后登录2003-08-21
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-06-05 13:28
其实我不是想自己弹出对话框,我是想达到那种效果。
windows在用户没有权限访问某些文件的时候会弹出对话框“拒绝访问”,我们怎么在驱动里面实现呢?
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-06-06 16:57
按照你的想法去做
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
游客

返回顶部