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


функция обратного вызова EVT_WDF_DEVICE_SET_LOCK (wdfpdo.h)

[Применимо только к KMDF]

Функция обратного вызова события драйвера EvtDeviceSetLock блокирует указанное устройство, чтобы его нельзя было удалить или разблокировать устройство, чтобы его можно было удалить.

Синтаксис

EVT_WDF_DEVICE_SET_LOCK EvtWdfDeviceSetLock;

NTSTATUS EvtWdfDeviceSetLock(
  [in] WDFDEVICE Device,
  [in] BOOLEAN IsLocked
)
{...}

Параметры

[in] Device

Дескриптор объекта устройства платформы.

[in] IsLocked

Логическое значение, указывающее, должен ли драйвер заблокировать или разблокировать устройство. Если TRUE, драйвер должен заблокировать устройство, чтобы его нельзя было удалить. Если false, драйвер должен разблокировать устройство, чтобы его можно было извлечь.

Возвращаемое значение

Если драйвер успешно блокирует или разблокирует устройство, он должен вернуть STATUS_SUCCESS. В противном случае он должен вернуть значение NTSTATUS, которое NT_SUCCESS оценивается как FALSE.

Дополнительные сведения о возвращаемых значениях функции обратного вызова см. в отчетов об ошибках устройства.

Замечания

Драйверы шины на основе платформы могут предоставлять функцию обратного вызова EvtDeviceSetLock. Чтобы зарегистрировать эту функцию обратного вызова, водители шины вызывают WdfPdoInitSetEventCallbacks.

Платформа вызывает функцию обратного вызова драйвера EvtDeviceSetLock, когда диспетчер PnP запрашивает драйверу шины блокировку или разблокировку одного из перечисленных дочерних устройств.

Не реализация функции обратного вызова EvtDeviceSetLock для устройства эквивалентна возврату значения NTSTATUS, которое оценивается как FALSE.

Дополнительные сведения о возвращаемых значениях см. в поддержкедоступных устройств.

Требования

Требование Ценность
целевая платформа универсальный
минимальная версия KMDF 1.0
Заголовок wdfpdo.h (включая Wdf.h)
IRQL PASSIVE_LEVEL

См. также

EvtDeviceEject