coban624
驱动牛犊
驱动牛犊
  • 注册日期2006-02-08
  • 最后登录2010-07-14
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望13点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
阅读:1328回复:3

有关文件系统识别器的问题

楼主#
更多 发布于:2007-02-12 18:49
  我更改了U盘的MBR区,改变了一些启动标志位,打开U盘时,会提示没有格式化,我怀疑因为这样做使系统认不出它的文件系统,我看了ifs的帮助文档中有关文件系统识别器的文章,并改写了一个文件系统识别器,当识别器读出u盘中的标志位时就加载FAT32的驱动(fastfat服务),但我的机器仍然不能读取u盘,提示没有格式化,请问这是怎么回事?当我加载其它的文件系统驱动时(如NTFS)会提示驱动已经加载,我看文档上说,卷的加载是动态的,也就是说当点击卷标时才会加载相应的文件系统。我的调试环境是xp sp2,ifs2003。不知道有没有人遇到过类似问题
michaelgz
论坛版主
论坛版主
  • 注册日期2005-01-26
  • 最后登录2012-10-22
  • 粉丝1
  • 关注1
  • 积分150分
  • 威望1524点
  • 贡献值1点
  • 好评度213点
  • 原创分0分
  • 专家分2分
沙发#
发布于:2007-02-13 00:34
A FSD is loaded doesn't mean it's mounted to a volume. After a FSD is loaded into system by recognizer, IO Manager will start mount request again on all registered FSDs. At this time, the new FSD's volume mount procedure will be called.

I believe you changed some import data in FAT MBR which FAT doesn't think it's a FAT volume any more.

Generally a recognizer and FSD has the same logic in checking device. FastFat cannot be loaded when a new volume is mounted means the new volume is not in FAT format. I don't think you need to have your own recognizer.
coban624
驱动牛犊
驱动牛犊
  • 注册日期2006-02-08
  • 最后登录2010-07-14
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望13点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-02-14 09:09
恩,现在明白了,感谢,不过还想问问呢,那有什么办法可以实现我的要求,就是可以让fat文件系统加载到我的u盘上?可不可以截获FSD加载时的irp,如果可以,应该截获哪个irp?是不是要加一个sfilter?
michaelgz
论坛版主
论坛版主
  • 注册日期2005-01-26
  • 最后登录2012-10-22
  • 粉丝1
  • 关注1
  • 积分150分
  • 威望1524点
  • 贡献值1点
  • 好评度213点
  • 原创分0分
  • 专家分2分
地板#
发布于:2007-02-14 23:52
Never done this myself before. Just show my ideas here.

I think you can get some help from FastFat source code. From FastFat we can find that the logic to check FAT volume is in function FatMountVolume(). Device IO control is used to read detailed volume information from disk.

So I don't think a FSFD can help you in this case. An upper level disk filter is a reasonable thought. You may get more information from diskperf sample in IFS.
游客

返回顶部