C++获取磁盘主分区

kouzc 2017-04-20 07:56:53
假如系统装在C盘,但现在用diskgenius等磁盘分区工具将主分区更改到F盘。请问各位大佬如何获取F盘这个主分区(这时候已经不能通过获取MBR的方式了吧?)。
...全文
520 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
kouzc 2017-04-24
  • 打赏
  • 举报
回复
引用 6 楼 DelphiGuy 的回复:
引用 4 楼 qq_20975143 的回复:
[quote=引用 3 楼 DelphiGuy 的回复:] 系统仍然从C引导吧,主分区、扩展分区都可以很多个。楼主的意思有点含糊,“如何获取F盘这个主分区”是什么意思?读分区还是其他?
你好!是这样的,假设电脑磁盘信息为(C(系统):、D:、E:、F)系统装在C盘上,现在想重装系统在F盘上,在PE下用工具diskgenius将F盘设成“主分区”。这时如何知道除了C盘外F也是主分区。
这个没有影响吧,是不是主分区都可以安装系统。 [/quote]我知道都能装,但就是想获取这一信息
kouzc 2017-04-24
  • 打赏
  • 举报
回复
引用 9 楼 DelphiGuy 的回复:
这样啊,读MBR或者GPT就可以知道了,GPT从扇区LBA1开始(就是紧跟MBR的下一个扇区),如果LBA1开头 8字节是EFI PART那就是有效的GPT头,具体格式网上很容易找到。不过GPT分区不存在主分区、扩展分区的差别,只能检测激活标志。
恩恩,谢谢指点!
kouzc 2017-04-24
  • 打赏
  • 举报
回复
引用 7 楼 u010165006 的回复:
主分区表在MBR上面
去看下,确实包含在MBR里面! 谢谢了,不然都不知道怎么查
  • 打赏
  • 举报
回复
这样啊,读MBR或者GPT就可以知道了,GPT从扇区LBA1开始(就是紧跟MBR的下一个扇区),如果LBA1开头 8字节是EFI PART那就是有效的GPT头,具体格式网上很容易找到。不过GPT分区不存在主分区、扩展分区的差别,只能检测激活标志。
  • 打赏
  • 举报
回复
系统仍然从C引导吧,主分区、扩展分区都可以很多个。楼主的意思有点含糊,“如何获取F盘这个主分区”是什么意思?读分区还是其他?
我不懂电脑 2017-04-21
  • 打赏
  • 举报
回复
用 api UINT WINAPI GetSystemDirectory( __out LPTSTR lpBuffer, __in UINT uSize ); 获取系统目录后,就可以知道了。
  • 打赏
  • 举报
回复
F是单独的一块硬盘吗,如果是可以CreateFile("\\\\.\\PhysicalDrive0", ...);PhysicalDrive0是第一块硬盘,依此类推。
ooolinux 2017-04-21
  • 打赏
  • 举报
回复
主分区表在MBR上面
  • 打赏
  • 举报
回复
引用 4 楼 qq_20975143 的回复:
引用 3 楼 DelphiGuy 的回复:
系统仍然从C引导吧,主分区、扩展分区都可以很多个。楼主的意思有点含糊,“如何获取F盘这个主分区”是什么意思?读分区还是其他?
你好!是这样的,假设电脑磁盘信息为(C(系统):、D:、E:、F)系统装在C盘上,现在想重装系统在F盘上,在PE下用工具diskgenius将F盘设成“主分区”。这时如何知道除了C盘外F也是主分区。
这个没有影响吧,是不是主分区都可以安装系统。
kouzc 2017-04-21
  • 打赏
  • 举报
回复
引用 2 楼 songhtao 的回复:
用 api UINT WINAPI GetSystemDirectory( __out LPTSTR lpBuffer, __in UINT uSize ); 获取系统目录后,就可以知道了。
。。。我忘了说是在PE下获取这一条件了!现补充上
kouzc 2017-04-21
  • 打赏
  • 举报
回复
引用 3 楼 DelphiGuy 的回复:
系统仍然从C引导吧,主分区、扩展分区都可以很多个。楼主的意思有点含糊,“如何获取F盘这个主分区”是什么意思?读分区还是其他?
你好!是这样的,假设电脑磁盘信息为(C(系统):、D:、E:、F)系统装在C盘上,现在想重装系统在F盘上,在PE下用工具diskgenius将F盘设成“主分区”。这时如何知道除了C盘外F也是主分区。

1,221

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧