Я скачал Пример драйвера IOCTL от MSDN. Я пытаюсь запустить исполняемый файл в этом примере, чтобы загрузить драйвер из его файла SYS, но я получаю эту ошибку, когда он вызывает StartService:
StartService failure! Error = 577
Unable to install driver.
ControlService failed! Error = 1062
577, согласно документации по коду ошибки, средства:
ERROR_INVALID_IMAGE_HASH
577 (0x241)
Windows cannot verify the digital signature for this file. A recent hardware or software change might have installed a file that is signed incorrectly or damaged, or that might be malicious software from an unknown source.
Я не понимаю, почему он не запускается, потому что в Visual Studio я зашел в настройки проекта в драйвере и установил их:
Режим знака -> «Тестовый знак»
Тестовый сертификат -> Я использовал опцию «Создать тестовый сертификат», чтобы создать и затем выбрать тестовый сертификат.
Так в чем же проблема сейчас? Как я могу получить этот драйвер для установки?
Начиная с 64-битной Windows Vista, Microsoft начала требующие подписанные драйверы если не обойти, используя параметры разработчика во время загрузки.
Есть варианты для обоих неподписанные драйверы (Опция F8 или присоединение отладчика ядра) и водители с тестовой подписью (Тестирование конфигурации загрузки). Самый простой обход — нажать F8 во время загрузки и выбрать «Отключить принудительное применение подписи драйверов», который будет действовать до следующей загрузки.