Меню Рубрики

Интеграция драйверов в дистрибутив windows 2008

Интеграция драйверов в дистрибутив Windows с помощью программы Dism++

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

Можно единожды создать установочный ISO нужной версии и разрядности Windows с внедрёнными конкретными драйверами. Это могут быть драйверы сетевых, видео-, аудиоустройств, портов USB 3.0 , принтеров и т.п. Как интегрировать в дистрибутив Windows драйверы нужного железа и периферии?

Интеграция драйверов не требует сложностей в виде установки Windows в режиме аудита с последующим захватом её в файл WIM или ESD , как это происходит при создании кастомной сборки системы с внедрёнными настройками и сторонним софтом. Драйверы внедрить можно путём переупаковки системного образа консольным средством Dism. Но проще для этих целей использовать бесплатную программу Dism++, большая часть её возможностей – это реализация функционала консольного средства Dism в графическом интерфейсе.

Эта программа же и поможет решить вопрос с самими драйверами, она умеет экспортировать их из среды установленной Windows.

1. Экспорт драйверов из среды установленной Windows

Программе Dism++ для внедрения драйверов в дистрибутив Windows принципиально не требуется, чтобы это были именно экспортированные ею же драйверы. Можем найти в Интернете драйверы нужного железа и периферии в формате отдельных файлов «.inf» или в виде папок-пакетов. Можем даже распаковать архиватором (например, 7zip) установочные файлы драйверов «.exe» , но только в этом случае надо определённо знать, какие конкретно файлы нужно интегрировать. Файлы-установщики драйверов часто идут для серии устройств производителя, и под конкретную модель драйвер выбирается на этапе установки в среду Windows. Программа Dism++ не обустроена программным интеллектом подгона драйверов под конкретную модель из серии устройств, она интегрирует в дистрибутив операционной системы без разбору всё, что мы ей подсунем. Но в итоге после установки Windows из такого дистрибутива получим проблемы в её работе.

В общем, интегрировать драйверы в дистрибутив лучше экспортированные, проверенные на конкретной версии и разрядности Windows.

Для экспорта драйверов на верхней ленте в окне Dism++ кликаем образ текущей установленной Windows, впрочем, если на компьютере нет второй системы, она там будет одна. Идём в программный раздел «Драйверы», раскрываем категории устройств, галочками отмечаем драйверы для экспорта. Жмём внизу «Экспорт».

Указываем папку для экспортируемого содержимого.

2. Извлечение содержимого установочного ISO

Теперь необходимо подготовить дистрибутив – установочный ISO нужной версии и разрядности. И смонтировать, т.е. подключить для отображения образ. В системах Windows 8.1 и 10 это делается просто – дважды кликаем по файлу ISO .

Далее копируем всё, что находится на смонтированном диске ISO , и вставляем его в папке с любым названием, в нашем случае эта папка так и называется — «Содержимое ISO».

В среде Windows 7 содержимое ISO можно извлечь архиватором 7zip . Открываем образ с помощью соответствующего пункта контекстного меню архиватора.

Кликаем в окне архиватора кнопку «Extract».

И указываем путь извлечения содержимого ISO .

3. Извлечение образа WIM/ESD

Создаём ещё одну папку, в неё мы извлечём содержимое файла install.wim или install.esd – непосредственно файла-образа дистрибутива Windows. В нашем случае это папка с дефолтным названием «Новая папка» .

Теперь в окне Dism++ идём в меню «Файл», выбираем «Монтировать образ».

В окошке параметров монтирования указываем, соответственно:

• Редакцию Windows;
• Путь к образу WIM/ESD – путь к файлу install.wim или install.esd, который находится в папке с извлечённым установочным ISO, в подпапке «sources»;
• Путь к созданной на предыдущем этапе папке.

Как только смонтированный образ дистрибутива будет готов, жмём «Открыть сессию».

4. Интеграция драйверов

Идём в раздел Dism++ «Драйверы», жмём внизу «Добавить».

Открываем папку с экспортированными драйверами и указываем для выбора одну из папок-категорий экспортированных драйверов.

Ждём, пока драйверы интегрируются.

И по точно такому же принципу добавляем папки-категории других драйверов.

5. Сохранение образа WIM/ESD

Теперь можем сохранять отредактированный дистрибутив Windows.

В меню «Файл» жмём «Сохранить образ как».

Жмём «Обзор».

Где-нибудь в отдельной папке сохраняем файл под именем «install» .

По умолчанию для этого файла стоит тип «Максимальное сжатие образа», это формат WIM . Он весит обычно на 30% больше, чем файл формата ESD , но для сохранения последнего потребуется намного больше времени, поскольку в этом процессе будет участвовать ещё и операция сжатия образа. Если есть риск того, что из-за веса файла install дистрибутив может не поместиться на установочный носитель, например, на флешку 4 Гб, то лучше при сохранении образа выбрать тип «Ультра сжатие образа».

Жмём «Ок» и дожидаемся сохранения файла.

После этого нужно размонтировать изначальный образ: в окне Dism++ жмём «Файл» и, соответственно – «Размонтировать образ».

6. Подмена образа WIM/ESD

Теперь идём в папку, куда мы на втором этапе извлекали содержимое установочного ISO . В подпапке «sources» удаляем исходный файл install.wim или install.esd . И вместо него вставляем скопированный новый install.wim или install.esd – тот, что с интегрированными драйверами, который мы сохранили на предыдущем этапе.

7. Создание нового установочного ISO

Если есть необходимость в упаковке отредактированного дистрибутива в файл установочного ISO , в программе Dism++ в разделе «Дополнительно» жмём «Создание ISO».

• Папку с изначальным содержимым ISO и подменённым впоследствии файлом install.wim или install.esd;
• Путь сохранения нового ISO;
• Метку ISO.

Дожидаемся завершения создания ISO .

И всё – установочный образ с интегрированными драйверами готов.

Источник

Интеграция драйверов в дистрибутив Windows

Если Вы хотите, чтобы после установки Windows Вам не требовалось устанавливать драйверы на устройства компьютера, то Вы можете интегрировать их в дистрибутив.

В этой статье я расскажу, как интегрировать драйверы в дистрибутив Windows.

Вам понадобится средство Windows AIK или Windows ADK.

Я буду рассказывать на примере Windows ADK. Для Windows AIK будут другие пути к исполняемым файлам, но их названия такие же. Поэтому Вы сможете самостоятельно их найти, например воспользовавшись поиском.

Скопируем все файлы дистрибутива WIndows в папку компьютера. У меня она называется PRO.

Также у нас должна быть создана папка, в которую мы будем монтировать образ Windows install.wim. Я ее назвал IMG.

В папке Drivers у меня собраны драйверы моих устройств. Их нетрудно найти на официальных сайтах производителей этих устройств. Список сайтов наиболее популярных производителей я публиковал ранее. Драйвера должны быть распакованы. Т.е. интегрируются драйверы в формате файлов *.inf, *.sys и т.п.

Запускаем «Среда средств развертывания и работы с образами» из меню Пуск — Все программы — Windows Kits — Windows ADK.

Вызываем DISM с параметром /Get-WimInfo, который показывает информацию о install.wim:

Сведения об образе : D:\Pro\sources\install.wim

Индекс: 1 Имя : Windows 7 PROFESSIONAL Описание : Windows 7 PROFESSIONAL Размер (байт): 18 473 214 093

Операция успешно завершена.

Нам здесь важно найти индекс. В моем случае это 1.

Монтируем образ с индексом 1 в папку IMG:

Для интеграции драйверов в дистрибутив запускаем команду:

Параметр /recurse позволяет брать дрова еще и из подпапок. Параметр /ForceUnsigned позволяет интегрировать неподписанные драйверы.

Теперь можно размонтировать образ из папки обратно в wim-файл, сохранив изменения:

Файл образа: D:\TempMy\1\Pro\sources\install.wim

Операция успешно завершена.

В папке, в которую в начале мы копировали все файлы дистрибутива WIndows (у меня она называется PRO), находится дистрибутив с интегрированными драйверами.

Его можно скопировать на загрузочную флешку и устанавливать с нее ОС.

Как подготовить загрузочную флешку, я рассказывал ранее.

Как интегрировать в дистрибутив обновления Windows читайте здесь.

24 комментарии

Здравствуйте, Сергей!
У меня вопрос-а как можно интегрировать драйверы в Win 8.1 и Win 10- ведь в дистрибутиве нет файла install.wim, а есть install.esd?
Спасибо.

Да, Вячеслав, есть такая проблема. Даже не проблема, а усложнение процесса.
ESD — это по сути сжатый и зашифрованный WIM.
В сети существуют различные программы, позволяющие из ESD получить WIM, и WIM сжать в ESD.
Поищи ESD2WIM или ESD-decryptor.

Добрый день, Сергей,
Вопрос: файлы драйверов перед интеграцией должны быть извлечены из архива, или это не обязательно?

Аркадий, драйвера должны быть распакованы. Т.е. интегрируются драйверы в формате файлов *.inf, *.sys и т.п.

Здравствуйте! Подскажите пожалуйста! Что делать в случае, если индекса 2?

Можно интегрировать в каждый индекс поочереди.
А можно использовать параметр «index» и указать в качестве значения звездочку «*».
/Index:*

Здравствуйте, подходит ли эта процедура для windows xp embedded?

Для Windows XP любых редакции эта процедура не подойдет — там совершенно другая модель дистрибутива. Там даже wim-файла нет.

Добрый день. Подскажите пожалуйста, при интегрировании драйверов выдает ошибку 2.
Не удалось получить доступ к образу.
Убедитесь, что путь к образу и каталог Windows образа существуют и учетная запись обладает правами на чтение папки.
DISM.exe /image:C:\intel\img/Add-Driver /driver:C:\Users\1\Desktop\drivers/recurse /ForceUnsigned
пытаюсь проделать это с win 12 serv

Андрей, проверьте наличие пробелов перед параметрами /Add-Driver, /recurse.
Должно быть примерно так:
DISM.exe /image:C:\intel\img /Add-Driver /driver:C:\Users\1\Desktop\drivers /recurse /ForceUnsigned

Здравствуйте, я наверное накосячил, у меня после второй команды появилось
«Ошибка: 0xc1420113
Пользователь попытался подключить образ в каталоге, в котором уже содержится подключенный образ.»
подскажите пожалуйста, как решить?

Похоже, что в папке, в которую Вы пытаетесь смонтировать образ, уже есть какие-то файлы.
Или удалите эти файлы, или монтируйте в другую (чистую) папку.

Здравствуйте!
Подскажите ,пожалуйста, в чем проблема. Во время интеграции драйверов выдает ошибку 0xc0000135.
В логах следующее:
2017-12-14 13:36:24, Info DISM DISM.EXE:
2017-12-14 13:36:24, Info DISM DISM.EXE:
2017-12-14 13:36:24, Info DISM DISM.EXE: Host machine information: OS Version=6.1.7601, Running architecture=amd64, Number of processors=4
2017-12-14 13:36:24, Info DISM DISM.EXE: Executing command line: DISM.exe /image:D:\winpe\mount /Add-Driver /driver:D:\winpe\usb3 /recurse /ForceUnsigned
2017-12-14 13:36:24, Info DISM DISM Provider Store: PID=5952 Getting the collection of providers from a local provider store type. — CDISMProviderStore::GetProviderCollection
2017-12-14 13:36:24, Info DISM DISM Provider Store: PID=5952 Provider has not previously been encountered. Attempting to initialize the provider. — CDISMProviderStore::Internal_GetProvider
2017-12-14 13:36:24, Info DISM DISM Provider Store: PID=5952 Loading Provider from location C:\Windows\System32\Dism\WimProvider.dll — CDISMProviderStore::Internal_GetProvider
2017-12-14 13:36:24, Info DISM DISM Provider Store: PID=5952 Connecting to the provider located at C:\Windows\System32\Dism\WimProvider.dll. — CDISMProviderStore::Internal_LoadProvider
2017-12-14 13:36:24, Info DISM DISM Provider Store: PID=5952 Provider has not previously been encountered. Attempting to initialize the provider. — CDISMProviderStore::Internal_GetProvider
2017-12-14 13:36:24, Info DISM DISM Provider Store: PID=5952 Loading Provider from location C:\Windows\System32\Dism\FolderProvider.dll — CDISMProviderStore::Internal_GetProvider
2017-12-14 13:36:24, Info DISM DISM Provider Store: PID=5952 Connecting to the provider located at C:\Windows\System32\Dism\FolderProvider.dll. — CDISMProviderStore::Internal_LoadProvider
2017-12-14 13:36:24, Info DISM DISM Provider Store: PID=5952 Provider has not previously been encountered. Attempting to initialize the provider. — CDISMProviderStore::Internal_GetProvider
2017-12-14 13:36:24, Info DISM DISM Provider Store: PID=5952 Loading Provider from location C:\Windows\System32\Dism\CompatProvider.dll — CDISMProviderStore::Internal_GetProvider
2017-12-14 13:36:24, Info DISM DISM Provider Store: PID=5952 Connecting to the provider located at C:\Windows\System32\Dism\CompatProvider.dll. — CDISMProviderStore::Internal_LoadProvider
2017-12-14 13:36:24, Info DISM DISM.EXE: Got the collection of providers. Now enumerating them to build the command table.
2017-12-14 13:36:24, Info DISM DISM.EXE: Attempting to add the commands from provider: WimManager
2017-12-14 13:36:24, Info DISM DISM.EXE: Succesfully registered commands for the provider: WimManager.
2017-12-14 13:36:24, Info DISM DISM.EXE: Attempting to add the commands from provider: FolderManager
2017-12-14 13:36:24, Info DISM DISM.EXE: Attempting to add the commands from provider: DISM Log Provider
2017-12-14 13:36:24, Info DISM DISM.EXE: Attempting to add the commands from provider: Compatibility Manager
2017-12-14 13:36:24, Info DISM DISM.EXE: Succesfully registered commands for the provider: Compatibility Manager.
2017-12-14 13:36:24, Info DISM DISM Provider Store: PID=5952 Getting the collection of providers from a local provider store type. — CDISMProviderStore::GetProviderCollection
2017-12-14 13:36:24, Info DISM DISM Provider Store: PID=5952 Getting the collection of providers from a local provider store type. — CDISMProviderStore::GetProviderCollection
2017-12-14 13:37:27, Error DISM DismHostLib: Failed to create DismHostManager remote object. Checking for dismhost.exe exit code.
2017-12-14 13:37:27, Info DISM DismHostLib: Found dismhost.exe exit code.
2017-12-14 13:37:27, Error DISM DISM Manager: PID=5952 Failed to create Dism Image Session in host. — CDISMManager::LoadImageSession(hr:0xc0000135)
2017-12-14 13:37:27, Warning DISM DISM Manager: PID=5952 A problem ocurred loading the image session. Retrying. — CDISMManager::CreateImageSession(hr:0xc0000135)
2017-12-14 13:38:27, Error DISM DismHostLib: Failed to create DismHostManager remote object. Checking for dismhost.exe exit code.
2017-12-14 13:38:27, Info DISM DismHostLib: Found dismhost.exe exit code.
2017-12-14 13:38:27, Error DISM DISM Manager: PID=5952 Failed to create Dism Image Session in host. — CDISMManager::LoadImageSession(hr:0xc0000135)
2017-12-14 13:38:27, Error DISM DISM Manager: PID=5952 Failed to load the image session from the temporary location: C:\Users\user\AppData\Local\Temp\3AE0DFBC-BBAE-4823-9B97-FF1E3E48EFA4 — CDISMManager::CreateImageSession(hr:0xc0000135)
2017-12-14 13:38:27, Error DISM DISM.EXE: Could not load the image session. HRESULT=C0000135
2017-12-14 13:38:27, Error DISM DISM.EXE: Unable to start the servicing process for the image at ‘D:\winpe\mount’. HRESULT=C0000135
2017-12-14 13:38:27, Info DISM DISM.EXE: Image session has been closed. Reboot required=no.

Также учтите что интегрирование (если например не видит контроллер USB или жестких дисков) необходимо добавлять в образ boot.wim

Пытаюсь интегрировать драйвера в чужой wim (из образа LiveDVD)
При добавлении драйвера выдаёт ошибку:

Cистема DISM
Версия: 10.0.16299.15
Ошибка: 0x80029c4a
Такой запрос не поддерживается.

Здрвствуйте Сергей!
Ввожу 2.команду:DISM /Mount-Wim /WimFile:»C:\Pro\sources\install.wim» /Index:4 /MountDir:C:\IMG.(система стоит на диске С. Идёт в всё поплану:подключается образ.Операция успешно завершена. В итоге: папку IMG копироваются папки диска С :
Program Files,Program Files (x86), :Windows, Пользователи.Далее привводе команды DISM.exe /image:С:\Img /Add-Driver /driver:С:\Drivers /recurse /ForceUnsigned.Ошибка 3.Где-то,я накосячил.

Здрвствуйте Сергей!
Ввожу 2.команду:DISM /Mount-Wim /WimFile:»C:\Pro\sources\install.wim» /Index:4 /MountDir:C:\IMG.(система стоит на диске С. Идёт в всё поплану:подключается образ.Операция успешно завершена. В итоге: папку IMG копироваются папки диска С :
Program Files,Program Files (x86), :Windows, Пользователи.Далее привводе команды DISM.exe /image:С:\Img /Add-Driver /driver:С:\Drivers /recurse /ForceUnsigned.Ошибка 3.Где-то,я накосячил.

Ребята подскажите как интегрировать несколько драйверов от разных материнских плат в один образ.

Спасибо за совет!
Удалил папку и создал заново.
Все прошло.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Интеграция драйверов в дистрибутив windows 7 usb
  • Интеграция драйверов ahci sata в windows xp
  • Интеграция updatepack в дистрибутив windows xp
  • Интеграция raid драйверов в дистрибутив windows xp
  • Интеграция ie11 в дистрибутив windows 7 dism