mikechen_1000
驱动牛犊
驱动牛犊
  • 注册日期2005-01-15
  • 最后登录2009-02-13
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望29点
  • 贡献值0点
  • 好评度24点
  • 原创分0分
  • 专家分0分
阅读:1026回复:0

Filem.sys 无法在 FAT32 拦截 IRP_MJ_CREATE ??

楼主#
更多 发布于:2007-12-07 11:50
各位大大您们好:

小弟在 NTFS (Win XP, Win 2003)的系统上 build 好的 filem.sys 可以正常拦截并阻挡文件的开启(假设为C:\temp\111.doc),但是如果将同源码在 FAT32 (Win XP, Win 2003)的系统上重新 build 好的 filem.sys 放至 filemon.exe 的目录执行,昏! 原来指定要拦截的文件 “C:\TEMP\111.doc” 虽有正确传回讯息给 filemon.exe(由DBGVIEW 得知) , 但却无法阻挡 Word 檔的开启,真是奇怪,难道 filem.sys 只能阻挡 NTFS 的系统,而无法阻挡 FAT32系统文件的开启,还是其它的作法,不知各位先道能否指导小弟是何状况, 谢谢 !!

Ex:

int _check;

case IRP_MJ_CREATE:

DbgPrint (("Get fullPathName in IRP_MJ_CREATE function is \"%s\"..\n",fullPathName));

_check = _stricmp(fullPathName,(PCHAR) "C:\\temp\\111.doc");

if(!_check) {
DbgPrint (("*Yes*, I got you..(IRP_MJ_CREATE)"));

//*** Force to stop create file action.. ****
//NTFS can intercept, but FAT32 can’t, why???
Irp->IoStatus.Information = 0;
Irp->IoStatus.Status = STATUS_ACCESS_DENIED;

return Irp->IoStatus.Status;

}
else {
DbgPrint (("*No*, I missing you..(IRP_MJ_CREATE)"));
}
}

...........

游客

返回顶部