Я думаю, что InstallShield (современные) поставляются с интеграцией для DIFx (среда установки драйвера), которая является частью WDK и поставляется в виде модулей слияния, а также DLL. В любом случае, вы можете использовать стандартные инструменты для интеграции модулей слияния, даже если InstallShield не включает прямую поддержку.
Однако "подписи" недостаточно . Вы должны иметь драйвер, так как Vista подписана особым образом, который включает корневые сертификаты (передавая /ac
при выполнении signtool sign
) как часть подписи (в начале процесса загрузки нет доступного хранилища сертификатов). Кроме того, во время установки Setup API фактически собирается проверить, что файл CAT, принадлежащий драйверу, был кросс-подписан MS (через WHQL). У вас есть CAT-файл и соответствующий INF-файл, а CAT-файл был кросс-подписан, верно?
Если у вас есть signtool (Windows SDK или WDK), используйте
signtool verify /kp /v <filename>
для проверки подписи (/v
для многословия, вы можете использовать /q
, если вас интересует только код возврата).
Если эти проверки не пройдены, это уже одна из основных причин.
Выполните эту проверку для файлов CAT и SYS.