Re[4]: Отмена UnloadRoutine
От: Злость Россия  
Дата: 08.09.06 10:38
Оценка:
Здравствуйте, straightener, Вы писали:

S>Здравствуйте, Злость, Вы писали:


З>>[skip]


O>>>>Как отменить выгрузку драйвера в UnloadRoutine? Или это делается не в UnloadRoutine?


ГМ>>>Unload не может быть вызвана без посылки драйверу сообщений IRP_MN_QUERY_STOP_DEVICE и IRP_MN_QUERY_REMOVE_DEVICE. Обрабатывайте их корректно — и Ваш драйвер не будет остановлен или выгружен.


З>>[skip]


З>>Все очень даже верно для PNP драйверов.

S>Не очень. IRP_MN_QUERY_STOP_DEVICE не обязан предшествовать IRP_MN_QUERY_REMOVE_DEVICE, мало того, девайс останавливается только для ребаланса ресурсов, а выключается он сразу, без перехода через состояние "stopped". Следует исключить IRP_MN_QUERY_STOP_DEVICE из вышепреведенного утверждения...

А там и нет четких фраз что они должны быть последовательными. Сказанно что обрабатывайте обе (правильно) и все будет хорошо.
Правда, Ложь — мне все одно — я имею свое мнение.
Если функция недокументированна — это не значит, что ее не используют все ваши конкуренты в своих продуктах.
Любой строй переходный и отрицать это значит быть закостенелым идиотом.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.