Динамически выгружаемый WDM-драйвер - пример в DDK?

Jun 15, 2004 1 Replies

Здравствуйте, All!



Подскажите, пожалуйста, куда копать: нужен пример WDM-драйвера, с динамической загрузкой/выгрузкой. Есть DDK98/2000/XP. Просмотрел, кажется, все. Hо не нашел :((( В DDK98 нашел динамический VXD. А WDM? Может, они все динамические, а я их выгружать не умею?


С уважением, Гуляев М.


"Michel Guliaev" сообщил в новостях следующее:

Выгрузка драйвера осуществляется процедурой DriverUnload, которую регистрирует сам драйвер в структуре DRIVER_OBJECT при выполнении DriverEntry. Ее можно и не регистрировать, но насколько я понимаю, хороший тон - все-таки зарегистрировать, и ресурсы, захваченные в DriverEntry, должны отдаваться обратно системе именно в DriverUnload. Также необходимо удалить все созданные драйвером объекты, отканселить IRP пакеты, вернуть таймеры, прерывания, DMA и проч. В этом случае получится выгружаемый WDM драйвер. UnloadDriver вызывается диспетчером автоматически при выполнении RemoveDevice, то есть при физическом удалении устройства, вроде бы можно сделать это и программно, без физического удаления устройства.

Примите уверения в совершеннейшем к Вам почтении

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required