У меня есть физический компьютер, с которого у меня есть две записи BCD для VHD для загрузки. Я ищу способ программно получить имя текущего виртуального жесткого диска, который был загружен. Я вижу возможные решения при использовании Hyper-V, но в этом сценарии я загружаюсь на физической машине. Я видел такое же поведение, установленное в Windows 7 и Windows 8.1

Выходные данные BCDEDIT и WMI (класс BCDSTORE) не показывают имя файла для загруженного VHD (вторая запись для второго VHD, третья запись для текущей загрузки):

Windows Boot Manager
--------------------
identifier              {bootmgr}
device                  partition=D:
description             Windows Boot Manager
locale                  en-us
inherit                 {globalsettings}
default                 {default}
resumeobject            {4c6d3c84-4bb6-11e3-bc07-b5a095a1a2a8}
displayorder            {default}
                        {current}
                        {4c6d3c81-4bb6-11e3-bc07-b5a095a1a2a8}
toolsdisplayorder       {memdiag}
timeout                 30

Windows Boot Loader
-------------------
identifier              {default}
device                  vhd=[D:]\VHD\v2.vhd
path                    \Windows\system32\winload.exe
description             Windows Embedded Standard
locale                  en-us
inherit                 {bootloadersettings}
osdevice                vhd=[D:]\VHD\v2.vhd
systemroot              \Windows
resumeobject            {4c6d3c84-4bb6-11e3-bc07-b5a095a1a2a8}
nx                      OptIn
detecthal               Yes

Windows Boot Loader
-------------------
identifier              {current}
device                  partition=C:
path                    \Windows\system32\winload.exe
description             Windows
locale                  en-US
inherit                 {bootloadersettings}
osdevice                partition=C:
systemroot              \Windows
resumeobject            {4c6d3c82-4bb6-11e3-bc07-b5a095a1a2a8}
nx                      OptIn
bootstatuspolicy        IgnoreAllFailures

Я понимаю, что мог бы указать имя файла в описании, но для конечного приложения мне нужно использовать их, чтобы пометить их для конечного пользователя.

1 ответ1

1

bcdedit /v предоставит полный путь для загруженного в данный момент виртуального жесткого диска.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .