繁体   English   中英

在Windows C ++上以编程方式移动分区

[英]Programaticly moving partitions on windows c++

我正在尝试创建一个应用程序,该程序将以编程方式将硬盘驱动器上的Windows分区从X扇区移动到Y扇区。

到目前为止我尝试过的是:

  • 将有效数据从起始扇区X复制到扇区Y(读/写)
  • 更新MBR上的分区表,以便特定分区位于偏移量Y
    进行第二步时,我正在使用DeviceIoControl函数的IOCTL_DISK_SET_DRIVE_LAYOUT控制代码,但我总是以蓝屏显示 (* kernel_stack_inpage_error *)

我还想念什么?

我的解决方案是使用c ++ / winapi,而我仅在Windows XP上尝试过。

您是否要移动Windows当前正在访问的分区(甚至Windows当前正在安装的分区)?

这将是一个非常糟糕的主意,因为在这种情况下缓存算法将无法再正常工作,因此蓝屏并不十分令人惊讶。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM