阅读:1798回复:4
过滤word遇到的问题 请大侠指点指点
问题描述:今天在使用WinDbg调试MyFilter文件过滤驱动时,发现没有改变原有文件(txt格式的文件)的内容时,IRP结构里的MdlAdress->ByteOffset的值为 0 ,MdlAdress->ByteCount也是相应文件的大小。反之则大于 0 。FileObject结构的FileName也是相应的文件名。
但是,当换成是word文件时就发生了可怕的问题,FileObject结构的FileName不是相应的文件名。MdlAdress->ByteCount不是相应文件的大小。其值为512,感觉此值好像是一个扇区的大小。FileName的后缀名为 .tmp。 |
|
|
沙发#
发布于:2008-11-25 01:05
拿filespy,filemon看WORD做了哪些事吧,好像没有哪里的文档说过MdlAdress->ByteCount是文件大小,我没见过
|
|
板凳#
发布于:2008-12-02 13:46
原来的文件会被删除,现在的文件是临时文件(对WORD文件来说)
|
|
地板#
发布于:2008-12-02 23:18
只不过是正常保护机制,先保存至临时文件,成功后重命名而已。拿FILESPY看看全明白了,如果这些都不想动手那没什么好说的了。
|
|
地下室#
发布于:2009-01-26 16:58
谢谢各位大侠了哈
|
|
|