阅读:1019回复:2
两种setinformation的区别??
我用filespy发现,设置文件长度时,IRP_MJ_SET_INFOMATION,有两种标志:
第一种:0x830,即IRP_DEFER_IO_COMPLETION和IRP_READ_OPERATION 和IRP_WRITE_OPERATION的组合, 这种标志的IRP是由应用程序发出的 第二种:0x42,即IRP_SYNCHRONOUS_PAGING_IO和IRP_PAGING_IO的组合,这种标志的IRP是system发出的。(内存管理器??) IRP_DEFER_IO_COMPLETION这个标志在微软文档和google上都搜不到,哪位大牛能帮忙解释下,这两种设置文件长度IRP的区别??? |
|
沙发#
发布于:2007-11-27 19:11
如果FileObject被Cleanup后,只有IRP_PAGING_IO标志的Irp才能Set Information,除此以外没啥区别,有区别的是SetFile.AdvanceOnly。
|
|
板凳#
发布于:2007-11-28 12:24
谢谢老大阿,我现在只处理0x42的setinfomation,vc不能用的问题解决拉:)
|
|