Цитата BXA:
чтобы не лепить симбиоз с z-drv-inst /то-есть распаковку 7z, прописывание путей к каталогам распаковки, снятие проверки цифровой подписи, »
|
Распаковку пакетов драйверов и динамическое формирование и прописывание в реестр путей к папкам драйверов возможно реализовать
только с помощью фейк-сетапа,
до запуска оригинального установщика (setupORG.exe или непосредственного вызова InstallWindowsNt из Syssetup.dll).
Связано это с особенностью устройства библиотеки setupapi.dll, которая во время первой загрузки и инициализации копирует из реестра список путей из ключа
HKLM,Software\Microsoft\Windows\CurrentVersion,DevicePath в свою внутреннюю строковую переменную. Так что если уже в оригинальном установщике где-то на Т-39 с помощью родной встроенной функциональности PreSetup запустить перечисление каталогов драйверов, то эффекта не будет никакого.
Опять же блокировка проверки цифровой подписи достигается из фейк-сетапа патчем всего 3 байт на лету
непосредственно в памяти в исполняемом коде библиотеки Syssetup.dll. Другие полезные патчи/правки, такие как правка ранжирования неподписанных драйверов (для отказа от необходимости удаления старых встроенных подписанных MS-овских драйверов из дистрибутива) в коде Syssetup.dll и setupapi.dll также можно накладывать прямо в памяти на эти библиотеки.
Так что использование одного нормального фейк-сетапа избавляет от необходимости использования кучи мусорных утилит и патченых системных библиотек.