Raw用fstream读取引导扇区

时间:2013-09-05 08:45:50

标签: c++

fstream file("G:", ios::in | ios::binary);

unsigned char buffer[512];

file.read((char *)buffer, 512);

file.close();

cout << buffer <<"\n";

我想从我的闪存驱动器中读取引导扇区。 我可以用这个工作流吗?

1 个答案:

答案 0 :(得分:3)

编写文件流操作以访问文件CPP Reference没有进一步指明在这种情况下'文件'是什么 - 也许它们是正确的。毕竟,高度取决于操作系统被认为是“文件”。

然而:在这些解释中,没有一个是引导扇区文件。您无法在Windows资源管理器或OS X Finder中查看或读取引导扇区 - 它“超出”文件级别

您的测试程序失败,因为“G:”不被解释为“闪存驱动器”,而只是“完整路径规范”。在“引导扇区”级别上工作时, 没有路径和驱动器号分配。您正在使用物理对象:实际磁盘和实际扇区。

请参阅http://www.codeproject.com/Articles/28314/Reading-and-Writing-to-Raw-Disk-Sectors了解原始阅读的第一次尝试。