Мне нужно найти способ, чтобы программно определить, какой диск Windows использует для загрузки. Другими словами, мне нужен способ из Windows, чтобы определить, какой диск BIOS использует для загрузки всей системы.
Предоставляет ли Windows интерфейс для обнаружения этого? С учетом того, насколько велик Windows API, я надеюсь, что там есть что-то, что могло бы помочь.
Терри
p.s. Просто чтение первых секторов жесткого диска ничего не дает. На моем устройстве dev у меня два жестких диска, и когда я смотрю содержимое первых двух секторов на любом из жестких дисков, у меня есть стандартная плата MBR.
Изменить, чтобы уточнить несколько вещей.
Я хочу идентифицировать устройство с помощью строки, которая будет идентифицировать физический диск (в отличие от логического диска). Физические диски имеют вид "\\. \ PHYSICALDRIVEx", где x - это число. С другой стороны, логический диск идентифицируется строкой вида "\\. \ X", где x - буква диска.
Редактировать, чтобы обсудить несколько идей, которые были выброшены.
Знание того, какой логический том используется для загрузки Windows, здесь не поможет. Вот причина. Предположим, что C: использует зеркальную настройку RAID. Теперь это означает, что у нас есть как минимум два физических диска. Теперь я сопоставляю логический диск с физическим диском и обнаруживаю, что этот том использует два физических диска. Какой из них использовал Windows для загрузки? Конечно, это предполагает, что физический диск, используемый Windows для загрузки, является тем же физическим диском, который содержит MBR.