C++ 开发基于扇区的分区复制程序?
我想开发一个程序,只将一个分区的“数据”复制到另一个分区。我想这样做,程序从源分区的第一个扇区开始,检查是否使用了一个扇区 如果使用 将其复制到目标分区。 其他的 不要抄袭 换句话说,这就像是一个分区一个分区地将一个分区的内容复制到另一个分区 问题: 有没有办法检查是否使用了硬盘上的特定扇区 <>我使用的编程语言是C++和NTFS.< /P>中的底层文件系统。C++ 开发基于扇区的分区复制程序?,c++,windows,ntfs,C++,Windows,Ntfs,我想开发一个程序,只将一个分区的“数据”复制到另一个分区。我想这样做,程序从源分区的第一个扇区开始,检查是否使用了一个扇区 如果使用 将其复制到目标分区。 其他的 不要抄袭 换句话说,这就像是一个分区一个分区地将一个分区的内容复制到另一个分区 问题: 有没有办法检查是否使用了硬盘上的特定扇区 我使用的编程语言是C++和NTFS.< /P>中的底层文件系统。 非常感谢。IIRC,扇区只存储原始字节和低级错误特定数据。你需要的信息是一种只有文件系统才能提供给你的元信息。你的问题根本上是有缺陷的。NT
非常感谢。IIRC,扇区只存储原始字节和低级错误特定数据。你需要的信息是一种只有文件系统才能提供给你的元信息。你的问题根本上是有缺陷的。NTS可以在同一集群中存储数据和元数据。两者都作为文件属性处理
我也在想这是什么意思。没有元数据,原始数据就毫无用处。你甚至不知道一个文件从哪里结束,另一个文件从哪里开始。ntfslone和你刚才描述的差不多
复制时,它可以跳过未分配的块。重新标记,因为(1)NTFS在扇区级别实际上不起作用,(2)标记应该与问题相关,并将类似问题分组。感谢您提供的信息。我应该先看看ntfs是怎么工作的好的谢谢Nick。我会看看我是否能找到一种方法,通过你提到的元信息来实现我想要的。你是对的。我的问题错了。我不应该寻找原始数据。我只是想,每个扇区都必须有一些属性,可以告诉操作系统某个特定扇区是否可用于存储数据或已被占用。无论如何,我错了。:)感谢您,空闲列表是在集群级别管理的。但从那里开始,这相当容易。有一个特殊的
$Bitmap
文件,每个集群有一个位,告诉操作系统集群是否空闲。请注意,您不应该在运行的系统上依赖此文件的内容。非常感谢。这很有帮助。如何查看MFT和$Bitmap?浏览。它涵盖的内容超出了您的需要,但具体描述了MFT和$位图,包括(在附录中)如何查看它们。