Поделиться через


Поддержка специальных файлов

К специальным файлам относятся файлы подкачки, файлы дампа и файлы гибернации. Если целевое устройство для драйвера является запоминающим устройством, которое система может использовать для этих файлов, драйвер должен сделать следующее:

  • Вызовите WdfDeviceSetSpecialFileSupport , чтобы включить или отключить поддержку для каждого типа специальных файлов. (Поддержка каждого драйвера для специальных файлов отключена по умолчанию.)

    Драйвер шины, перечисляющий дочерние устройства, также должен вызывать WdfDeviceSetSpecialFileSupport для каждого дочернего устройства, которое может поддерживать специальные файлы.

  • Вызовите WdfDeviceAddDependentUsageDeviceObject, если одно устройство зависит от другого устройства при поддержке специальных файлов.

  • При необходимости укажите функцию обратного вызова EvtDeviceUsageNotification или (начиная с KMDF 1.11) EvtDeviceUsageNotificationEx , чтобы драйвер был уведомлен о создании или удалении специального файла.

Если драйвер вызывает WdfDeviceSetSpecialFileSupport для устройства и если на устройстве открыт специальный файл, платформа не позволяет диспетчеру PnP удалять или останавливать устройство.

После вызова драйвера WdfDeviceAddDependentUsageDeviceObject он может вызвать WdfDeviceRemoveDependentUsageDeviceObject , чтобы удалить зависимость устройства от другого устройства.