Вы находитесь на странице: 1из 4

Странно, что отдельной темы ещё нет. Программа очень сложная, а в интернете довольно мало информации.

несколько линков на BCDEdit справочники:


http://www.google.com/search?hl=en&safe=off&q=bcdedit%20filetype:doc

http://www.google.com/search?hl=en&safe=off&q=bcdedit+site:msdn2.microsoft.com&meta=

Справочник по работе с программой также включён в саму программу, задайте в коммандной строке

Код:

bcdedit /? TOPICS

чтобы увидеть отдельные настройки, используются следующие параметры:

Код:

bcdedit /v
bcdedit /enum bootmgr,
bcdedit /enum osloader
bcdedit /enum all
bcdedit /store C:\boot\BCD /enum ACTIVE

и т.д.

название отдельных пунктов в boot menu меняется следующим образом (пример):

Код:

bcdedit /set {ntldr} description "Microsoft Windows XP Professional SP2"


bcdedit /set {current} description "Microsoft Windows Vista Enterprise x64"

{current} - это стандартно выбранная система, обычно виста, но если стоят две висты, то та, которую вы сделали
стандартной, в boot.ini это раньше в winxp называлось "default".

{ntldr} - это предыдущие виндоус системы, например winxp.

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

Код:

bcdedit /enum all

Изменение порядка отдельных пунктов в boot menu:

Код:

bcdedit /displayorder {current} {ntldr}

т.е. сначала будет значится виста, потом winxp и т.д.


timeout, т.е. сколько секунд меню будет показываться, меняется следующим образом:

Код:

bcdedit /timeout 30

убрать отдельные пункты из boot menu можно следующим образом:

Код:

bcdedit /delete {GUID} /f /cleanup

GUID - опять же номер отдельной системы

сохранить все настройки, на случай, если что сломается, можно так:

Код:

bcdedit.exe /export "C:\Boot\BCDBackup"

вернуть (думаю, вернуть можно и из под winxp?) можно так:

Код:

bcdedit.exe /import "C:\Boot\BCDBackup"

Ещё МС выпустили файлик под названием FixNTFS.exe для фикса стартовых настроек, что то вроде fixmbr в
winxp. в обычную инсталляцию висты он не входит, поэтому советую его скачать сейчас и сохранить на диск,
чтобы потом не плакать, если boot manager не будет стартоваться.

FixNTFS поддерживает следующие функции:

Код:

fixntfs /lh -> restore Vista boot loader

fixntfs -xp -> restores WinXP

это дополнительно к

Код:

bcdedit.exe /import "C:\Boot\BCDBackup" -> restores the store

для персональных пользователей следующие настройки самые лучшие. если вы используете висту на фирме, а
не лично, это не для вас:

Код:

bcdedit /bootems {bootmgr} OFF


bcdedit /set {current} sos on
Bcdedit.exe -set TESTSIGNING ON
bcdedit.exe /set {current} nx AlwaysOff

EMS - система отдалённого ремонта. персональному пользователю не нужн и представляет риск для
безопасности компьютера, поэтому отключаем.

SOS - покажет все драйверы, которые виста открывает при boot-е, вместо обычного скрина. соответсвует старому
flag-у /sos в boot.ini в winxp

TESTSIGNING ON позволяет использовать самоподписанные драйверы в висте. бесценная функция на висте x64

nx AlwaysOff -> отключает DEP в висте

-----------------

Ещё я нашёл возможность добавить winxp recovery console (панель восстановления от winxp) в виде настоящего
GUID-а в boot menu. обычно, если recovery console проинсталлирована на харде и соответствующий пункт
находится в boot.ini, виста его оттуда вычитывает и перенимает. в так называемом STORE, т.е. в самом boot
manager-е, этого пункта нет и если boot.ini убрать из корня c:\ партиции, он исчезнет. чтобы его добавить в boot
loader в виде GUID-а, делаете следующее:

1) создаёте новый пункт в boot manager-е путём копирования пункта winxp:

Код:

bcdedit.exe /copy {ntldr} /d "Microsoft Windows XP Recovery Console"

Это создаст новый пункт в boot manager-е, который появляется при старте компьютера

2) сделайте копии ntldr и boot.ini файлов и переименуйте копии:

ntldr -> recc.bin


boot.ini -> recc.ini

3) откройте "recc.bin" файл hex editor-ом, найдите слово boot.ini (есть в нескольких местах) и замените на recc.ini

4) откройте recc.ini и уберите все пункты, кроме recovery console, например:

Код:

[boot loader]
timeout=0
default=c:\CMDCONS\BOOTSECT.DAT
[operating systems]
c:\CMDCONS\BOOTSECT.DAT="Microsoft Windows XP Recovery Console" /CMDCONS

5) откройте boot.ini и уберите строчку с recovery console, она больше не нужна, т.к. теперь виста будет
ответственна за этот пункт.

6) меняем путь нового пункта, созданного через bcdedit:


Код:

bcdedit /set {GUID} PATH \recc.bin

это указывает, где находится boot loader нового пункта. GUID - это тот номер, который bcdedit выдаст при
копировании winxp пункта (см. наверху)

вот картинка, поясняющая, как должен выглядить пункт с recovery console (в самом низу картинки):

http://home.arcor.de/wrfan/files/vista/BCDEdit.gif

Если вы хотите похакать настройки boot manager-а от руки, они сидят в следующем ключе в реестре:

Код:

HKEY_LOCAL_MACHINE\BCD00000000\Objects

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

ещё меня интересует, как добавить дополнитеьные тулзы в главное меню менеджера (по аналогии с тулзой для
проверки памяти компьютера) и как добавить пункты из расширенного boot menu в главное меню. сдаётся мне,
что это можно сделать только через regedit или даже только путём хака winload.exe файла

Оценить