Создание объектов обратного вызова

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

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

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

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

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

На следующем рисунке показано, как объекты обратного вызова, реализованные драйвером, соответствуют объектам платформы .

объекты платформы и объекты обратного вызова, предоставляемые поставщиком.

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

  • Объект обратного вызова драйвера

    Платформа использует объект обратного вызова драйвера для инициализации драйвера и уведомления драйвера о прибытии нового устройства.

  • Объект обратного вызова устройства

    Драйвер использует объект обратного вызова устройства для хранения контекста устройства и обработки очистки и закрытия файловых объектов и событий Plug and Play (PnP) и управления питанием (PM).

  • Объект обратного вызова очереди

    Драйвер использует объект обратного вызова очереди для обработки ввода-вывода.

На следующем рисунке показано, как драйвер UMDF создает объект обратного вызова устройства.

последовательность вызовов для создания объекта обратного вызова устройства umdf.

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