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


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

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

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.

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