Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Драйвер регистрирует уведомления о событиях изменения целевого устройства PnP путем вызова IoRegisterPlugPlayNotification.
Следующие сведения относятся к вызову этой подпрограммы для уведомления об изменении целевого устройства:
Укажите EventCategory в виде EventCategoryTargetDeviceChange.
EventCategoryData должен указывать на объект файла для устройства, на котором запрашивается уведомление.
Если подпрограмма обратного вызова драйвера требует доступа к объекту файла, драйвер должен получить ссылку на объект файла перед вызовом IoRegisterPlugPlayNotification.
Если подпрограмма обратного вызова драйвера не требует доступа к объекту файла, драйвер не должен ссылаться на объект.
После закрытия объекта файла драйвер продолжает получать уведомления для устройства, пока драйвер не удаляет регистрацию уведомлений. Такая конструкция позволяет драйверу, например, получать уведомления о событиях, связанных с GUID_TARGET_DEVICE_REMOVE_CANCELLED.
Укажите определяемый драйвером Контекст , который диспетчер PnP передает в подпрограмму обратного вызова.
Драйвер может использовать параметр Context для поддержания сведений о текущем состоянии объекта файла (например, он был закрыт или удален).
Драйвер также может использовать Context для хранения пути, который он использовал для первоначального открытия устройства. Драйвер может использовать этот путь для повторного открытия устройства после отмены операции удаления. (Дополнительные сведения см. в разделе Обработка GUID_TARGET_DEVICE_REMOVE_CANCELLED событий.)
Драйвер удаляет регистрацию уведомлений, вызывая IoUnregisterPlugPlayNotification с использованием NotificationEntry, которая была возвращена через IoRegisterPlugPlayNotification. Если драйвер получил ссылку на объект файла, когда он регистрировался для уведомления, и эта ссылка по-прежнему не закрыта, драйвер должен освободить ссылку после удаления регистрации.