Сообщения драйвера

Каждое сообщение драйвера состоит из идентификатора сообщения и 2 32-разрядных параметров. Идентификатор сообщения — это уникальное значение, которое проверяется функцией дриверпрок , чтобы определить, какое действие следует выполнить. Значение параметров сообщения зависит от сообщения. Параметры могут представлять значения или адреса. Во многих случаях параметры не используются и имеют значение 0.

Сообщения драйвера могут быть стандартными или пользовательскими. Windows отправляет стандартные сообщения драйвера, такие как DRV _ OPEN, drv _ CLOSEи drv _ CONFIGURE, на устанавливаемый драйвер в ответ на запрос на открытие, закрытие или настройку драйвера. Стандартные сообщения направляют устанавливаемый драйвер для загрузки или выгрузки ресурсов, включения или отключения его работы, открытия или закрытия экземпляра драйвера и вывода диалогового окна конфигурации. Некоторые стандартные сообщения, такие как DRV _ Power и DRV _ екситсессион, уведомляют драйвер о системных событиях, влияющих на работу драйвера или любого связанного оборудования.

Приложения и библиотеки DLL отправляют пользовательские сообщения драйвера для направления устанавливаемого драйвера для выполнения действий, связанных с драйвером. Устанавливаемые драйверы, поддерживающие пользовательские сообщения, должны содержать соответствующую обработку в функции дриверпрок . Чтобы предотвратить конфликт между пользовательскими и стандартными сообщениями драйверов, идентификаторы настраиваемых сообщений должны иметь значения от DRV, _ зарезервированные для _ пользователя DRV. Пользовательские сообщения, передаваемые в функцию дефдриверпрок , игнорируются.