Здравствуйте! Кто-нибудь знает как присваивается уровень драйвера в системе. Это делается по порядку установки драйверов или на это можно как-то влиять. Т.е. можно ли сделать так, чтобы определенный драйвер был самым "нижним", т.е. после него уже гарантированно информация не могла быть обработана сторонним драйвером (я про диски, порты). И еще, можно ли из драйвера узнать, имеет ли другой драйвер цифровую подпись? Спасибо за внимание и возможные ответы.
Если твой драйвер использует интерфейст чужого драйвера, то значит он и не самый "низкий". А если он работает напрямую с портами, то никакой другой драйвер уже не вмешивается
А вообще почитай например Солдатова. Там на русском описываются такие понятия как dispatch процедуры и irp пакеты
Мне важно, чтобы после установки моего драйвера, в системе не появился нижележащий драйвер, обрабатывающий те же данные, ну или хотя бы я мог это контролировать.
На порядок загрузки драйверов никак не влияет порядок их установки. Объяснять долго. Ищи в доках: lower-level class filter driver lower-level device filter driver upper-level class filter upper-level device filter driver
ksu_ant это невозможно. Всегда можно вклиниться в любую точку стека драйверов, конечно нестандартно но перехватить обработчики очень легко.
Спасибо за предыдущий ответ. Вот именно это мне и нужно, а пишу я на самом деле драйвер-фильтр. Можно ли узнать подробнее, как перехватить чужой обработчик. Заранее благодарен.