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


Создание объекта file для обработки ввода-вывода

Предупреждение

UMDF 2 является последней версией UMDF и заменяет UMDF 1. Все новые драйверы UMDF должны быть написаны с помощью UMDF 2. В UMDF 1 новые функции не добавляются, а поддержка UMDF 1 в более новых версиях Windows 10 ограничена. Универсальные драйверы Windows должны использовать UMDF 2.

Архивные примеры UMDF 1 можно найти в Windows 11 версии 22H2 — обновление примеров драйверов за май 2022 г.

Дополнительные сведения см. в разделе начало работы с помощью UMDF.

Когда приложение открывает дескриптор файла, диспетчер ввода-вывода создает объект файла. Платформа, в свою очередь, создает объект файла платформы для представления файлового объекта диспетчера ввода-вывода.

Если драйвер не устанавливает директиву UmdfFileObjectPolicy в значение AllowNullAndUnknownFileObjects, UMDF требует, чтобы каждый запрос ввода-вывода был связан с объектом файла. Дополнительные сведения об этой директиве см. в разделе Указание директив WDF в INF-файлах.

Если драйвер UMDF отправляет операции ввода-вывода, не зависящие от приложения, следующему драйверу в стеке (например, во время инициализации устройства или для получения уведомлений о событиях устройства), драйвер должен создать собственный объект файла для связи с запросом.

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