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


IRP_MN_EJECT

Водители автобуса обычно обрабатывают этот запрос для своих дочерних устройств (дочерних PDO), которые поддерживают извлечение устройств. Драйверы функций и фильтров не получают этот запрос.

Значение

0x11

Основной код

IRP_MJ_PNP

При отправке

Диспетчер PnP отправляет этот IRP, чтобы направить соответствующий драйвер или драйверы на извлечение устройства из слота.

Диспетчер PnP отправляет этот IRP на PASSIVE_LEVEL IRQL в произвольном контексте потока.

Входные параметры

Нет

Выходные параметры

Нет

Блок состояния ввода-вывода

Драйвер автобуса задает Irp-IoStatus.Status> значение STATUS_SUCCESS или соответствующее состояние ошибки.

При успешном выполнении водитель автобуса устанавливает значение Irp-IoStatus.Information> равным нулю.

Если водитель автобуса не обрабатывает этот IRP, он оставляет Irp-IoStatus.Status> как есть и завершает IRP.

Операция

Чтобы устройство было выброшено, оно должно находиться в состоянии питания устройства D3 (выключено) и должно быть разблокировано (если устройство поддерживает блокировку).

Любой драйвер, возвращающий успешное выполнение этого IRP, должен дождаться извлечения устройства перед завершением IRP.

Общие правила обработки Plug and Play дополнительных irP см. в Plug and Play.

Отправка этого IRP

Зарезервировано для системного использования. Драйверы не должны отправлять этот IRP.

Вместо этого см. страницу справки по процедуре IoRequestDeviceEject .

Требования

Заголовок

Wdm.h (включая Wdm.h, Ntddk.h или Ntifs.h)

См. также раздел

IoRequestDeviceEject