IRP_MN_QUERY_STOP_DEVICE
Все драйверы PnP должны обрабатывать этот IRP.
Значение
0x05
Основной код
При отправке
Диспетчер PnP отправляет этот IRP, чтобы запросить, можно ли остановить устройство для повторной балансировки ресурсов.
В Windows 98/Me диспетчер PnP также отправляет этот IRP при отключении устройства.
Диспетчер PnP отправляет этот IRP на PASSIVE_LEVEL IRQL в контексте системного потока.
Входные параметры
Нет
Выходные параметры
Нет
Блок состояния ввода-вывода
Драйвер задает Irp-IoStatus.Status> значение STATUS_SUCCESS или соответствующее состояние ошибки. Если драйвер не может остановить устройство, драйвер устанавливает для Irp-IoStatus.Status> значение STATUS_UNSUCCESSFUL.
Драйвер шины может задать для Irp-IoStatus.Status> значение STATUS_RESOURCE_REQUIREMENTS_CHANGED, чтобы указать на успешное выполнение IRP, а также запросить, чтобы диспетчер PnP повторно запросил требования к ресурсам для устройства перед отправкой остановки IRP.
Операция
Этот IRP сначала обрабатывается драйвером в верхней части стека устройств, а затем передается каждому нижнему драйверу в стеке.
В ответ на этот IRP драйвер указывает, безопасно ли остановить устройство для перебалансирования ресурсов.
Общие правила обработки Plug and Play дополнительных irp см. в Plug and Play.
Отправка этого IRP
Зарезервировано для системного использования. Драйверы не должны отправлять этот IRP.
Требования
Заголовок |
Wdm.h (включая Wdm.h, Ntddk.h или Ntifs.h) |