Создание объекта 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 отправляет операции ввода-вывода, не зависящие от приложения, следующему драйверу в стеке (например, во время инициализации устройства или для получения уведомлений о событиях устройства), драйвер должен создать собственный объект файла для связи с запросом.
В следующих разделах описываются различия между объектами файлов, созданными драйвером и созданными приложением, а также способы создания и использования файлового объекта драйвером.