Как добавить свою утилиту в среду восстановления Windows 11 и 10

Как добавить свой пункт в среде восстановления WindowsСреда восстановления Windows может быть очень полезной, когда необходимо восстановить работу ОС после тех или иных действий, которые привели к нежелательным результатам. По умолчанию в ней уже присутствуют почти всё, что необходимо, однако иногда могут требоваться дополнительные инструменты.

В этой инструкции о том, как добавить собственный пункт и соответствующую программу в среду восстановления Windows 11 или Windows 10.

Добавление инструментов в среде восстановления

Вы можете добавить в среду восстановления любые программы и утилиты, которые могут выполняться ограниченной среде (то есть не требуют запуска «полной» Windows со всеми драйверами и функциями) и могут работать в портативном режиме — почти все инструменты, которые вы встречаете на различных LiveCD подойдут. Но есть ограничение: возможно добавление только одного собственного инструмента в меню среды восстановления.

Далее в качестве примера будет рассмотрено ручное добавление Dism++ в среду восстановления Windows 11 (в Windows 10 и для других программ всё будет выполняться аналогичным образом).

Порядок действий будет следующим:

  1. Запустите командную строку от имени администратора.
  2. Отключите среду восстановления с помощью команды
    reagentc /disable
  3. Создайте папку на диске для подключения образа со средой восстановления, в моем случае это будет папка C:\winre, создать её можно вручную в проводнике или с помощью команды
    md C:\winre
  4. Введите команду (путь к папке C:\winre измените на свой)
    Dism /mount-image /imagefile:C:\Windows\System32\Recovery\winre.wim /index:1 /mountdir:C:\winre
    Монтирование winre.wim в DISM
  5. В блокноте или другом текстовом редакторе создайте с именем WinREConfig.xml, в кодировке UTF-8 со следующим содержимым:
    <?xml version="1.0" encoding="utf-8"?>
    <!-- WinREConfig.xml -->
    <Recovery>
    <RecoveryTools>
    <RelativeFilePath>Dism++x64.exe</RelativeFilePath>
    <CommandLineParam>/param1 /param2</CommandLineParam>
    </RecoveryTools>
    </Recovery>
    Здесь в параметре RelativeFilePath задаётся имя исполняемого файла (не путь к нему), а в CommandLineParam — параметры запуска. Если параметры запуска не требуются, удалите эту строку, оставлять её пустой не следует.
  6. Сохраните файл WinREConfig.xml (внимание: при сохранении в блокноте в поле «Тип файла» нужно указать «Все файлы», иначе он сохранится как TXT) в папке со смонтированным образом, в моём случае путь будет C:\winre\sources\recovery\tools причём папка tools по умолчанию отсутствует, её потребуется создать. Для сохранения файла могут потребоваться права администратора. Сохранение файла конфигурации среды восстановления
  7. Скопируйте вашу утилиту (все её файлы и папки) в ту же папку tools таким образом, чтобы исполняемый файл утилиты был в корне этой папки.
  8. Сохраните изменённый образ среды восстановления с помощью команды (путь измените на свой)
    Dism /unmount-image /mountdir:C:\winre /commit
    Сохранение измененного образа WinRE
  9. Создайте текстовый файл в кодировке UTF-8 со следующим содержимым:
    <?xml version="1.0" encoding="utf-8"?>
    <!-- AddDiagnosticsToolToBootMenu.xml -->
    <BootShell>
    <WinRETool locale="en-us">
    <Name>Tool Name</Name>
    <Description>Tool Description</Description>
    </WinRETool>
    <WinRETool locale="ru-ru">
    <Name>Название утилиты</Name>
    <Description>Описание утилиты</Description>
    </WinRETool>
    </BootShell>
    здесь указаны имена и описания утилиты на русском и английском языках, тем же образом можно добавить другие языки. Сохраните файл AddDiagnosticsToolToBootMenu.xml в удобное расположение на компьютере (имя файла можно задать и другое, но обязательно — XML), например, в C:\Windows\System32\Recovery
  10. Введите команду (указав фактический путь к созданному на 9-м шаге файлу):
    reagentc /setbootshelllink /configfile C:\Windows\System32\Recovery\AddDiagnosticsToolToBootMenu.xml
    для добавления нового пункта в меню среды восстановления. Добавление пункта меню в среду восстановления
  11. Введите команду
    reagentc /enable
    чтобы включить среду восстановления.

Если всё прошло успешно, то при следующей перезагрузке в среду восстановления (например, с помощью Shift+Перезагрузка) вы увидите свою утилиту в разделе «Поиск и устранение неисправностей»:

Собственная утилита добавлена в среду восстановления Windows

И, если в файлах конфигурации не было допущено ошибок, а сама программа может работать в среде восстановления, то можно надеяться на её успешный запуск:

Запуск собственной утилиты в среде восстановления

При повторных изменениях файлов конфигурации или отключении с последующим включением среды восстановления, кастомный пункт может пропадать. Решение — по порядку использовать команды для повторного его добавления:

reagentc /disable
reagentc /setbootshelllink /configfile C:\Windows\System32\Recovery\AddDiagnosticsToolToBootMenu.xml
reagentc /enable

Комментарии (2) к Как добавить свою утилиту в среду восстановления Windows 11 и 10

  • Игорь

    Гораздо проще и быстрее это можно сделать из меню самой программы Dism ++.

    Ответить

    • Dmitry

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

      Ответить

Оставить комментарий

Интересное
Список инструкций Windows 11 Windows 10 Подписаться