阅读:2171回复:4
求救:用写字板打开一个txt文件,再保存
最近做文件的镜像,发现一个很奇怪的问题:
假设原来有个D:\ a.txt 文件,然后我用写字板打开这个文件,什么都不做,再保存该文件,发现驱动会捕获以下操作: IRP_MJ_CREATE: (其中CreateOperation的标志位为:FILE_CREATE) 还有若干个IRP_MJ_WRITE操作 总体就是:只要我用写字板打开一个txt文件,然后保存,不管有没有进行操作,都会捕获到新建文件的操作。 不明白的是:这个文件原来就是存在的,那它后面的新建文件怎么会成功呢?没有名字冲突吗? |
|
沙发#
发布于:2009-08-03 21:04
回 楼主(hell74111) 的帖子
怎么不可以!! |
|
板凳#
发布于:2009-08-03 22:15
not only MJ_CREATE IRP is used for creating a new file, but also it is used for opening an existing file or even deleting a file. Check MS$ document for more details.
|
|
地板#
发布于:2009-08-04 11:02
英语很牛
|
|
|
地下室#
发布于:2009-08-05 13:56
这个以已经解决了,写字板打开文件在驱动截获时,是FILE_OVERWRITE_IF,覆盖的方式打开的。谢谢各位
|
|