Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.

Статьи о Microsoft Windows

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

  • 23 апреля 2015 |
  • Автор 
  • Печать
  • Эл. почта

Если Вы хотите, чтобы после установки 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:

DISM /Get-WimInfo /WimFile:"D:\Pro\sources\install.wim"

Cистема DISM Версия: 6.2.9200.16384

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

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

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

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

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

DISM /Mount-Wim /WimFile:"D:\Pro\sources\install.wim" /Index:1 /MountDir:D:\IMG

Cистема DISM
Версия: 6.2.9200.16384

Подключение образа
[==========================100.0%==========================]
Операция успешно завершена.

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

DISM.exe /image:D:\Img /Add-Driver /driver:D:\Drivers /recurse /ForceUnsigned

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

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

DISM /Unmount-Wim /MountDir:D:\Img /Commit

Cистема DISM

Версия: 6.2.9200.16384

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

Индекс образа: 1

Сохранение образа

[==========================100.0%==========================]

Отключение образа

[==========================100.0%==========================]

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

Готово.

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

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

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

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

Обсудить статью можно на форуме

 

Последнее изменение Пятница, 09 сентября 2016 15:16

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

  • Вячеслав

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

    написал Вячеслав 28.06.2016, 23:36 Комментировать
  • Сергей

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

    написал Сергей 01.07.2016, 12:00 Комментировать
  • Аркадий

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

    написал Аркадий 04.09.2016, 19:12 Комментировать
  • Сергей

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

    написал Сергей 09.09.2016, 15:13 Комментировать
  • Игорь

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

    написал Игорь 30.11.2016, 08:24 Комментировать
  • Сергей

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

    написал Сергей 02.12.2016, 16:49 Комментировать
  • Anthony

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

    написал Anthony 06.04.2017, 16:01 Комментировать
  • Сергей

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

    написал Сергей 13.04.2017, 20:40 Комментировать
  • Андрей

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

    написал Андрей 29.10.2017, 14:53 Комментировать
  • Сергей

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

    написал Сергей 10.11.2017, 20:22 Комментировать
  • Игорь

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

    написал Игорь 16.11.2017, 23:19 Комментировать
  • Сергей

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

    написал Сергей 12.12.2017, 11:57 Комментировать
  • Александр

    Здравствуйте!
    Подскажите ,пожалуйста, в чем проблема. Во время интеграции драйверов выдает ошибку 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.

    написал Александр 14.12.2017, 16:11 Комментировать
  • Алексей

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

    написал Алексей 03.02.2018, 22:12 Комментировать
  • БлагоЯр

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

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

    Через диспетчер выдаёт такие ошибки:
    https://a.radikal.ru/a42/1802/6d/01f2a4265874.jpg
    https://d.radikal.ru/d36/1802/2c/ea8123640a33.jpg

    написал БлагоЯр 11.02.2018, 12:13 Комментировать
  • Владимир

    Здрвствуйте Сергей!
    Ввожу 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.Где-то,я накосячил...?

    написал Владимир 05.03.2018, 13:27 Комментировать
  • Владимир

    Здрвствуйте Сергей!
    Ввожу 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.Где-то,я накосячил...?

    написал Владимир 05.03.2018, 13:31 Комментировать
  • Daniyar

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

    написал Daniyar 29.05.2018, 16:08 Комментировать
  • Василий

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

    написал Василий 31.08.2018, 17:18 Комментировать
  • Валерий

    Здравствуйте
    Хотел добавить драйвера amd для usb3 (успешно) и sata(ошибка) в install.win, драйвера скачены от производителя
    http://prntscr.com/lmz0z3
    Вот кусок лога
    2018-11-26 08:00:04, Error DISM DISM Driver Manager: PID=3768 Failed to install the driver package 'D:\3\sata_AHCI\W764A\amd_sata.inf'. - CDmiDriverStore::Import(hr:0x80070005)
    2018-11-26 08:00:04, Error DISM DISM Driver Manager: PID=3768 Failed to install the driver package 'D:\3\sata_AHCI\W764A\amd_sata.inf'. - CDriverPackage::InternalInstall(hr:0x80070005)
    2018-11-26 08:00:04, Error DISM DISM Driver Manager: PID=3768 d:\w7rtm\base\ntsetup\opktools\dism\providers\dmiprovider\dll\driverpackage.cpp:433 - CDriverPackage::Install(hr:0x80070005)
    2018-11-26 08:00:04, Info DISM DISM Driver Manager: PID=3768 Driver package D:\3\sata_AHCI\W764A\amd_sata.inf failed to install. (hr:0x80070005). - CDriverManager::AddDriverPackagesFromCollection
    2018-11-26 08:00:04, Error DISM DISM Driver Manager: PID=3768 d:\w7rtm\base\ntsetup\opktools\dism\providers\dmiprovider\dll\drivermanager.cpp:1063 - CDriverManager::Internal_DoAddDriverPackage(hr:0x80070005)
    2018-11-26 08:00:04, Error DISM DISM Driver Manager: PID=3768 d:\w7rtm\base\ntsetup\opktools\dism\providers\dmiprovider\dll\drivermanager.cpp:519 - CDriverManager::ExecuteCmdLine(hr:0x80070005)
    2018-11-26 08:00:04, Info DISM DISM Driver Manager: PID=3768 Further logs for driver related operations can be found in the target operating system at %WINDIR%\inf\setupapi.offline.log - CDriverManager::ExecuteCmdLine
    2018-11-26 08:00:04, Error DISM DISM.EXE: DriverManager processed the command line but failed. HRESULT=80070005

    написал Валерий 26.11.2018, 10:26 Комментировать
  • Валерий

    https://social.technet.microsoft.com/Forums/lync/ru-RU/3340e1d8-b2d3-42f5-a2a1-a061977a1652/105410961080107310821072-5-108710881080?forum=windows7ru
    Пакетная разблокировка файлов полученных через инет ->свойства папки -> атрубуты->другие->папка готова для архивации

    написал Валерий 27.11.2018, 10:26 Комментировать
  • Валерий

    Отказ в доступе 5 описан здесь
    https://social.technet.microsoft.com/Forums/lync/ru-RU/3340e1d8-b2d3-42f5-a2a1-a061977a1652/105410961080107310821072-5-108710881080?forum=windows7ru
    надо выполнить пакетнаю разблокировку файлов полученных через инет (это ваши драйвера)->свойства папки -> атрубуты->другие->папка готова для архивации
    После этого интеграция у меня прошла успешно

    написал Валерий 27.11.2018, 10:43 Комментировать
  • Eliasabide

    http://mysite.ru

    написал Eliasabide 27.10.2019, 02:12 Комментировать
  • TravisUnora

    Огромная база игрушек https://btgame.ru/,которая обновляется описанием и еще обзорами игр игроками.

    написал TravisUnora 04.03.2020, 16:59 Комментировать
  • AllenZomia

    индивидуалки спб объявления

    написал AllenZomia 01.12.2023, 02:11 Комментировать

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

Поля, отмеченные звездочкой (*) обязательны для заполнения.

Наверх