NTFS文件系统错误 - 磁盘上存储的文件名不正确 [英] NTFS File System Bug - File Names Stored Incorrectly on Disk

查看:97
本文介绍了NTFS文件系统错误 - 磁盘上存储的文件名不正确的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,

我在Windows XP(我相信,Vista)文件系统中发现了一个错误,我完全不知道如何修复。 CheckDisk没有注意到或关心它。问题是:

Hi all,

I have found a bug in the Windows XP (and I believe, Vista) file system that I have absolutely no idea how to fix. CheckDisk does not notice or care about it. The problem is this:

对于某些长文件名(大约20个字符以上;整个卷的长度相同但在所有系统中不是常数),父目录索引中的文件名存储正确,但FILENAME_INFORMATION属性中的文件名不正确:单个字符(在整个卷中的相同位置)完全随机,转换为某个随机Unicode字符。在那之后,一切都再次正确。

For certain long file names (about greater than 20-ish characters; the length is the same for the whole volume but not constant in all systems), the file name in the parent directory's index is stored correctly, but the file name in the FILENAME_INFORMATION attribute is incorrect: a single character (at the same position in the entire volume) is completely random, converted to some random Unicode character. After that, everything is correct again.

知道这不是我的应用程序中的错误 - 我使用了十六进制编辑器来修复它,但显然是"固定"它实际上打破了它 - 当我"修复"时它,Windows无法识别该文件,但是当我"取消修复"时它,文件再次变好了。

I know this is not a bug in my application - I have used a hex editor to fix it, but apparently "fixing" it actually breaks it - when I "fix" it, the file is not recognizable by Windows, but when I "unfix" it, the file becomes fine again.

我想知道为什么会这样?这是一个错误吗?如何划分经理克服它?

I'm wondering why this is? Is this a bug? And how to partition managers overcome it?

谢谢!

推荐答案

我发现了同样的问题作为Wfunc。我目前正在开发一个在win7中读取NTFS MFT的应用程序。



在我的情况下,奇怪的字符出现在win32名称的第75位(字节)150中FILENAME_INFORMATION属性。由于win7在其目录结构中喜欢长文件名,因此我目前有超过1000个不正确的名称。
$


因此我可以确认Wfunc的声明。有没有人知道为什么这样做,或者如何仅使用FILENAME_INFORMATION来检索正确的名称?
b
b $ b b b为了让其他人确认这确实是MFT问题,我上传了一个4MB的Truecrypt硬盘。此磁盘只包含一个非隐藏(
I found the same problem as Wfunc. I am currently developing an application which reads the NTFS MFT in win7.

In my case the strange character appears at position 75 (byte) 150 of the win32 name in the FILENAME_INFORMATION attribute. Since win7 likes long filenames in its directory structure, I currently have over 1000 names which are incorrect.

I can thus confirm Wfunc's statement. Does anyone know why this is done, or how to retreive the correct name using only the FILENAME_INFORMATION?

In order for others to verify that this is indeed a MFT issue, I uploaded a 4MB Truecrypt harddisk. This disk contains only one non-hidden(


)文件,该文件在NTFS MFT中名称不正确,但Windows正确显示。

truecrypt的密码体积是"123"。 (没有引号)。它可以在
找到
http:// www.student.tue.nl/q/t.lammers/wrong.rar

$


在磁盘上,文件名为: 

03 Hertenboutjes omwikkled met spek en rodewijnchocoladesaus,aardappelsouflees met gruyere en winterse roerbakgroenten.doc

有一个错误的第75个字符(f)。



谢谢!
) file which is named incorrectly in the NTFS MFT, but windows shows it correctly.
The password for the truecrypt volume is "123" (without quotes). It can be found at http://www.student.tue.nl/q/t.lammers/wrong.rar

On the disk, the file, named: 
03 Hertenboutjes omwikkled met spek en rodewijnchocoladesaus, aardappelsouflees met gruyere en winterse roerbakgroenten.doc
has a wrong 75'th character (f).

Thanks!


这篇关于NTFS文件系统错误 - 磁盘上存储的文件名不正确的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆