DriverEntry драйвера режима ядра WFP вызывается по-разному на некоторых машинах?

Я добавил некоторый код в образец MSNMNTR платформы фильтрации Windows для своего собственного приложения, но он по-прежнему имеет ту же структуру. Я скомпилировал драйвер и приложение для 64-разрядной версии Win8, а также подписал драйвер. На (виртуальной) машине, на которой я создал код, образец работает нормально и правильно отслеживается. Когда я копирую inf, sys и exe на другую машину, образец НЕ отслеживает. Через вывод traceview я вижу, что на второй машине DriverEntry() не вызывается, поэтому управление потоком никогда не настраивается. На двух машинах установлена ​​релизная версия Win8. Это не похоже на проблему с моим новым кодом, так как драйвер отлично работает на машине № 1, и это не похоже на проблему с подписью, потому что, когда я отключаю обязательное использование подписи на машине № 2, у меня все еще есть проблема. И релизная, и отладочная версии кода имеют одну и ту же проблему. Шаги, которые я использую для настройки и запуска кода, приведены ниже. Какие вещи могут вызвать такое поведение?

  1. Скопируйте драйвер .pdbs в папку для traceview.
  2. Щелкните правой кнопкой мыши .inf и выберите «Установить».
  3. Запустите «net start msnmntr» из командной строки с повышенными привилегиями.
  4. Запустите traceview от имени администратора.
  5. Запустите «monitor monitor «C:\Program Files\Internet Explorer\iexplore.exe»» из командной строки с повышенными привилегиями.

P.S. Я еще не поставил на него Windbg, но я обновлю вопрос с результатами, как только попробую.

Отредактировано для добавления: Хорошо, я запустил отладчик режима ядра на обеих машинах и увидел разницу в поведении. Прежде всего, DriverEntry вызывается на обеих машинах. Я ошибся. Однако на машине, где код работает (т.е. отслеживает веб-трафик), DriverEntry вызывается при запуске monitor.exe (шаг 5 выше), а на машине, где код не работает, вызывается DriverEntry когда выполняется «net start msnmntr» (шаг 3 выше).


person jeffm    schedule 18.10.2012    source источник


Ответы (1)


Проблема заключалась в том, что я не установил выноски через "монитор надстройки" на второй машине. Поскольку это одноразовый шаг, я забыл, что сделал это несколько недель назад на оригинальной машине.

person jeffm    schedule 01.11.2012