阅读:1877回复:9
怎样才能屏蔽写操作?
怎样才能屏蔽写操作呢?一直都在寻求这个办法,有人知道吗?
|
|
最新喜欢:![]() |
沙发#
发布于:2007-04-17 03:34
word或者excel的做法很特殊
它并没有写源文件,而是用的改名的方法,实际上是删除源文件,然后把临时文件改名成源文件 ... 所以你除了要handle write 之外还要handle setfileinformation之类的东西,呵呵 |
|
|
板凳#
发布于:2007-04-16 15:55
而且改可读的方法不行啊
改了以后还改不回来了 而且容易出问题,经常死机 |
|
地板#
发布于:2007-04-16 13:57
很奇怪,比如一个.dat文件,我用ultraedit打开就不能改,而用写字板打开就可以改,这是为什么呢?
|
|
地下室#
发布于:2007-04-16 13:42
必须是在IRP_MJ_CREATE下发FSD之前设置。
这种方法有几个难题需要解决: 1。IRP_MJ_CREATE下发FSD之前获取文件全路径比较困难,不过可以参照FILEMON的方法; 2。如果在IRP_MJ_CREATE之后设置则应该做如下处理: a〉下发IRP_MJ_CREATE请求,并在成功返回后按Sfilter方法或来文件全路径; b〉如果文件名匹配成功则CACEL先前的Create,并重新以只读属性下发IRP_MJ_CREATE请求到FSD; 这两种方法都可行,但方法相对都比较麻烦。 |
|
|
5楼#
发布于:2007-04-16 12:40
那为什么把它改为只读行不通呢?
|
|
6楼#
发布于:2007-04-16 11:49
引用第3楼victorliuhao于2007-04-16 11:14发表的“”: The IoSetShareAccess routine sets the access rights for sharing the given file object. |
|
|
7楼#
发布于:2007-04-16 11:14
用IoSetShareAccess这个函数可以吗?
|
|
8楼#
发布于:2007-04-16 10:50
是在IRP_MJ_CREATE里做修改吗
为什么我改过以后仍然可以写呢? |
|
9楼#
发布于:2007-04-16 10:37
|
|
|