Привет, друзья. Мы продолжаем цикл публикаций, посвящённых раскрытию потенциала бесплатной программы Dism++. Напомню, это портативная программа, являющая собой графический интерфейс для штатного средства работы с образами Windows Dism.
Более подробно о ней в целом вы можете узнать из этой статьи, ну а кому интересно было бы глянуть все материалы сайта о работе и с консольной Dism, и с Dism++, юзайте, друзья, тег Dism. А в этой статье будем говорить о возможности добавления в меню загрузки Windows и запуске программы Dism++ в среде WinPE. Как это сделать, а главное – зачем это делать?
Как добавить программу Dism++ в меню загрузки Windows
Работа с Dism++ в среде WinPE
Итак, Dism++ — это портативная программа, работающая в среде Windows. Но при необходимости она может запускаться и работать в среде WinPE — в отдельной от операционной системы программной среде по типу LiveDisk’ов. В среде WinPE программу можно запускать разово, когда в этом станет необходимость. Делается это из её интерфейса в работающей среде Windows. В меню «Восстановление» выбираем «Запуск в среде восстановления Windows».
BadUSB — Ключ-Флешка для авторизации в ЛЮБОЙ системе / на ЛЮБОМ сайте | UnderMind
В среде WinPE доступны все возможности Dism++ и даже более: только при таком запуске мы можем с помощью программы переустановить Windows с форматированием диска С. Тогда как в среде работающей Windows эта возможность Dism++ не может быть реализована по условию. Свою среду WinPE программа отображает наряду с полноценными Windows, установленными на компьютере.
При необходимости мы можем работать с Dism++ в среде WinPE, но при этом можем её запускать не через интерфейс программы в среде рабочей Windows, а прямо в меню загрузки операционной системы. Что для этого нужно?
Как добавить Dism++ в меню загрузки Windows
Для начала саму программу Dism++ необходимо поместить на несистемный раздел диска – раздел D, E, F и т.д. Тогда мы сможем с её помощью при переустановке и восстановлении Windows из бэкапа форматировать диск С. Далее в среде Windows запускаем Dism++, в меню «Опции» открываем «Настройки».
В настройках ставим галочку опции «Интеграция в меню загрузки BCD». И нажимаем «Ок».
И можем перезагружаться. В меню загрузки теперь у нас, кроме самой Windows, будет пункт запуска Dism++.
Примечание: друзья, информация к сведению для тех, кто работает с несколькими операционными системами или добавленными в меню загрузки LiveDisk’ами. Ускорить заход в нужную вам программную среду для работы можно, минуя меню загрузчика Windows. Программа iReboot реализует удобное меню захода в нужную среду прямо в системном трее Windows. Детальнее об этом читайте в статье «Удобное переключение между несколькими Windows с утилитой iReboot».
Как сделать свой экран загрузки Windows 7?
Как убрать Dism++ из меню загрузки Windows
Если возможность запуска Dism++ в меню загрузки Windows больше не понадобится, убрать программу, впрочем, как и само меню загрузки системы, если она одна стоит на компьютере, можно следующим образом. Жмём клавиши Win+R, вводим:
Нажимаем Enter. Запустится окно конфигурации системы, в нём идём во вкладку «Загрузка». Удаляем пункт запуска Dism++. Применяем изменения.
Примечание: друзья, рассматриваемая нами тема даёт замечательный повод напомнить вам или рассказать для тех, кто не знает, о добавлении в меню загрузки Windows комплексного решения при возникновении разного рода проблем с операционной системой – реанимационного LiveDisk’а Сергея Стрельца. Это LiveDisk’ на базе WinPE, на его борту присутствует и программа Dism++. И, как и она, LiveDisk Стрельца также может быть запущен на компьютере не с внешнего, подключаемого через USB носителя, а с внутреннего жёсткого диска. Подробнее об этом читайте в статье «Как установить Live-диск by Sergei Strelec на жёсткий диск по типу второй Windows».
Ну а мы вернёмся к теме статьи и, наконец, поговорим о её сути – в каких случаях нам может пригодится возможность запуска этой программы из меню загрузчика Windows.
Dism++ как альтернатива Recovery-средам восстановления Windows
Итак, друзья, работающая не в среде операционной системы, а в среде WinPE программа Dism++, как упоминалось, открывает нам возможность форматирования диска С при переустановке Windows или её откате к бэкапу, созданному в формате файла установки системы WIM. Есть ещё и другие возможности программы, для которых нужен запуск в среде WinPE – например, захват образа Windows при создании своей сборки в режиме аудита с отвязкой комплектующих.
Кто создавал свои такие сборки и захватывал образ системы консольным средством Dism или утилитами, реализующими интерфейс к нему, знает, что эталонный образ Windows после его кастомизации необходимо отвязать от железа компьютера, на котором такой эталонный образ настраивался. Делается это с помощью утилиты Sysprep, она приводит образ к состоянию готовности для развёртывания на других компьютерах путём сброса драйверов и вывода системы на экран приветствия.
После такого сброса работа Windows завершается, а её образ захватывается с внешнего носителя – с установочного диска системы или LiveDisk’а. На котором запускается командная строка, и в ней проводится операция по захвату образа средством Dism. Так вот с помощью Dism++ создать свою сборку Windows можно без участия загрузочного носителя и виртуальных машин. Dism++ развернёт Windows для снятия эталонного образа на другом разделе диска или в файле VHD. Dism++ же и захватит образ Windows, будучи запущенной в среде WinPE.
Для этих возможностей добавление Dism++ в меню загрузчика не обязательно, ведь, как упоминалось в начале статьи, запустить программу в среде WinPE можно разово из её интерфейса. Но где точно нам понадобится возможность запуска Dism++ из меню загрузки, так это для отката Windows к бэкапу из WIM-файла в случае её неспособности загружаться. О преимуществах резервного копирования Windows средствами Dism++, об использовании программы в этом направлении мы детально говорили в статье «Как создать бэкап Windows и восстановиться из него при неполадках системы с участием программы Dism++». И вот, друзья, в части резервного копирования реализация запуска Dism++ в среде WinPE – это, по сути, альтернатива Recovery-средам восстановления Windows, предлагаемым OEM-разработчиками или сторонним бэкап-софтом по типу AOMEI OneKey Recovery и Acronis Startup Recovery. Если у вас Windows перестанет загружаться, вы сможете в меню загрузки запустить Dism++ и восстановить Windows из хранящегося на диске WIM-бэкапа.
В случае чего можно будет даже переустановить Windows из хранящегося на диске установочного ISO без лишней возни с загрузочным носителем. Вот только обязательным условием реализации всех этих возможностей является целостность раздела загрузчика и, собственно, его самого. Иначе Dism++ придётся запускать с LiveDisk’а Стрельца.
Источник: remontcompa.ru
Как выполнить свой программный код до запуска Windows, если нет возможности разместить его в BIOS.
Как выполнить свой программный код до запуска Windows,
если нет возможности разместить его в BIOS ,
или
Волшебная антистарфорсовская дискета для SiliconImage SiI0680A .
Вступление
Суть метода
- Запуск доисторической операционной системы MS-DOS (версия непринципиальна).
- Запуск досовской программы (условно назовем ее myprogram.exe), реализующей желаемые функции. Т.е. будет выполнен программный код, который не удалось запихнуть в биос материнской платы.
Обычно этот программный код производит некоторые манипуляции с «железом» ПК. В частности, таким образом можно настраивать некоторые регистры нужных PCI устройств, что в дальнейшем нам очень пригодится. - Запуск программы INT19.com , которая особым образом производит перезагрузку компьютера.
Пример готовой к использованию дискеты
- Скачиваете архив (320.5 Кбайт).
- Распаковываете его.
- Устанавливаете пустую дискету в дисковод A:. Не забудьте убрать с дискеты защиту от записи.
- Запускаете INSTALL.BAT и жмете .
ntldr
ntdetect.com
boot.ini
bootsect.dos
io.sys
msdos.sys
command.com
autoexec.bat
ChngReg.exe
SiImage.cfg
keypress.com
int19.exe
Дискета предназначена для смены идентификационных регистров (DeviceID) контроллера SiliconImage SiI0680A. Если Вы читали мою предыдущую статейку SiliconImage vs. StarForce, то наверняка уже догадались, зачем нужны все эти манипуляции.
Пользовательский код (который я хотел бы запихнуть в биос материнки или самого контроллера SiI0680A, но не смог) содержится в программе ChngReg.exe.
Т.е. эта программа выполняет роль myprogram.exe о которой я заикнулся выше.
ChngReg.exe меняет идентификационные регистры DeviceID и SubSystemID контроллера SiI0680A. Таким образом отпадает необходимость изменять эти регистры вручную в WPCREDIT или при помощи WPCRSET.
Если раньше у стрфорса еще был шанс влезть впереди WPCRSET и других драйверов, чтобы воспрепятствовать или засечь факт смены идентификационных регистров, то в случае использования специальной дискеты старфорс остается не у дел.
После смены регистров для контроллера SiI0680 потребуются новые драйвера. Они присутствуют на той же дискете в папке DRIVERS.687.
Как самому создать такую дискету ?
- Берем дискету. Форматируем ее в Windows XP/NT.
- Сохраняем нулевой сектор (512 байт) в файл BootSect.WXP.
Эту операцию я обычно произвожу в Norton DiskEditor’е. - Загружаемся в ДОС и форматируем дискету в нем.
При помощи досовской команды sys.com (или format.exe /S) переносим на дискету системные досовские файлы io.sys, msdos.sys, command.com. - Снова сохраняем нулевой сектор (512 байт), на этот раз в файл BootSect.DOS.
- Записываем обратно на дискету нулевой сектор из файла BootSect.WXP
- Копируем на дискету в любом файловом менеджере (хоть в проводнике)
* системные файлы: NTLDR, NTDETECT.COM, BOOT.INI ;
* BOOTSECT.DOS , созданный ранее;
* вспомогательные файлы: keypress.com, int19.exe ;
* файлы, ответственные за выполнение желаемых дествий (в моем случае это были: ChngReg.exe, SiImage.cfg); - При необходимости корректируем BOOT.INI и AUTOEXEC.BAT.
- При необходимости можно организовать многоуровневые меню при помощи файла CONFIG.SYS.
- Меняем порядок загрузки драйверов Windows.
- Как выполнить свой программный код до запуска Windows, если нет возможности разместить его в BIOS.
За пост начислено вознаграждение
Источник: overclockers.ru
Как запустить свою программу до загрузки windows
← →
Nau ( 2003-12-08 17:35 ) [0]
Народ Help! Меня заинтресовал вопрос такого плана:
Как можно запустить прогу и что-то сделать до загрузки Windows.
Если можно с примером. Заранее благодарен.
← →
PVOzerski ( 2003-12-08 17:39 ) [1]
А как boot-вирусы работают?
← →
Юрий Зотов ( 2003-12-08 17:58 ) [2]
Строго говоря, программа, сделанная на Delphi (и, следовательно, работающая под Windows), работать ДО загрузки Windows, конечно, не сможет.
Весь вопрос в том, что именно Вы понимаете под словом «загрузка Windows». Загрузку ее ядра? Вход пользователя в систему? Запуск Проводника или другой оболочки? Еще что-то?
И после ВАШЕГО ответа на ЭТОТ вопрос можно будет ответить на вопрос, заданный Вами.
← →
DVM ( 2003-12-08 18:21 ) [3]
Поместить ее в раздел реестра
HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRun
Оболочка (такая как эксплорер), стартуя, запустит ее перед тем как создать свои окна.
HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServices
— запуск до оболочки.
← →
MAC ( 2003-12-09 01:48 ) [4]
Если ты хочешь загрузить свою программу до появления рабочего стола (в смысле до загрузки Explorer-a), то в Windows-ах 9х не получиться(они не будут ждать завершения твоей проги, перед тем как грузить explorer как например в XP и 2000). Какой параметр в реестре DVM тебе написал.
Вышеописанное мной не касается программ, работающих в фоновом режиме.
← →
Nau ( 2003-12-10 13:47 ) [5]
Если быть точнее как грузить мою прогу до загрузки kernel32.dll (ядро системы).
← →
BiN ( 2003-12-10 16:10 ) [6]
а динамическую загрузку езще никто не отменял.
← →
BiN ( 2003-12-10 16:12 ) [7]
вдогонку: . загрузку библиотек естествено
← →
Jel ( 2003-12-10 16:17 ) [8]
> Nau
А что собственно делает программа которую нужно непременно грузить до загрузки ядра системы?
Отладчик, работающий в Ring 0 или хитрый вирь?
← →
skr ( 2003-12-10 16:27 ) [9]
🙂
до загрузки ядра да на дельфах хи-хи у тя дельфа поверх ядра
я понял тебе надо в 0 кольцо — есть несколько путей
1. у тя win9Х — пишешь на асме или с или турбо паскакале
прогу под дос в защищенном режиме (сложно я бы не взялся за бесплатно)из нее дергаешь бут адреса системы. а саму прогу оставляешь резидентом (чисто теоретически девятка вообще состоит из 0 кольца)
2. у тя win NT и его мутунты :))
2.1 пишеш прогу как службу(сервис) или драйвер. получаеш загрузку в 0 кольце, но после ядра — штатные средства разработки
(чисто теоретически это будет частью ядра самой системы)
2.2 пишеш прогу как придется даже с использованием всетроенного
асма ставишь и дергаешь дравину giveIO.sys ты в 0 кольце.
2.3 пишеш прогу в защищенном режиме. ставиш ее до загрузки ОСи, из нее дергаешь ОС(так работает софтайс) (я такое даже писать не взялся бы и тебе не советую)
А Вы уже написали программу, которая может работать без kernel32?
Если уже написали, то для Вас не должно быть проблем и в написании ее загрузчика.
А если еще не написали, то, наверное, как раз с этого и нужно начинать?
Источник: delphimaster.net