Выгрузка драйвера вместе с виндовс

Тема в разделе "WASM.NT.KERNEL", создана пользователем Begemot, 1 дек 2006.

  1. Begemot

    Begemot New Member

    Публикаций:
    0
    Регистрация:
    28 ноя 2006
    Сообщения:
    79
    Такая проблема:
    Есть Legacy драйвер. Работает нормально и т.п. Но, когда выключаю/перезагружаю компутер система выгружает все программы, оставляет только заставку рабочего стола и долго-долго ждет. Потом она-таки выгрузится, но слишком долгое ожидание получается.
    В драйвере реализован Unload:
    - делает обратное от DriverEntry;
    - освобождает используемую драйвером память (связанный список строк);
    Что-то еще нужно? Может обработчик MJ_SHUTDOWN, рабочая процедура SHUTDOWN или что-то другое?
     
  2. gilg

    gilg New Member

    Публикаций:
    0
    Регистрация:
    19 май 2005
    Сообщения:
    527
    http://www.osronline.com/ddkx/kmarch/drvcomps_1bfr.htm :

    "Note that the Unload routine is not called if a driver's DriverEntry routine returns a failure status. In this case, the I/O manager simply frees the memory space taken up by the driver.

    Neither the PnP Manager nor the I/O Manager calls Unload routines at system shutdown time. A driver that must perform shutdown processing should register a DispatchShutdown routine."
     
  3. Begemot

    Begemot New Member

    Публикаций:
    0
    Регистрация:
    28 ноя 2006
    Сообщения:
    79
    gilg
    Спасибо, все заработало.