次の方法で共有


IRP_MN_QUERY_STOP_DEVICE

すべての PnP ドライバーは、この IRP を処理する必要があります。

0x05

主要なコード

IRP_MJ_PNP

送信時

PnP マネージャーは、デバイスを停止してリソースを再調整できるかどうかを照会するために、この IRP を送信します。

Windows 98/Me では、PnP マネージャーは、デバイスが無効になっているときにも、この IRP を送信します。

PnP マネージャーは、システム スレッドのコンテキストの IRQL PASSIVE_LEVEL でこの IRP を送信します。

入力パラメーター

なし

出力パラメーター

なし

I/O 状態ブロック

ドライバーは、Irp->IoStatus.Status を STATUS_SUCCESS に設定するか、適切なエラー状態に設定します。 ドライバーがデバイスを停止できない場合、ドライバーは Irp->IoStatus.Status を STATUS_UNSUCCESSFUL に設定します。

バス ドライバーは、Irp->IoStatus.Status を STATUS_RESOURCE_REQUIREMENTS_CHANGED に設定することで、IRP の成功を示すだけでなく、PnP マネージャーに停止 IRP を送信する前に、デバイスのリソース要件を再クエリするように要求することもできます。

操作

この IRP は、最初にデバイス スタックの最上位にあるドライバーによって処理され、その後スタック内の各下位ドライバーに渡されます。

この IRP に応答して、ドライバーは、リソースの再調整のためにデバイスを停止しても安全かどうかを示します。

プラグ アンド プレイのマイナー IRP の処理に関する一般的な規則については、「プラグ アンド プレイ」を参照してください。

この IRP の送信

システムで使用するために予約されています。 ドライバーは、この IRP を送信することはできません。

要件

ヘッダー

Wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む)

関連項目

IRP_MN_CANCEL_STOP_DEVICE

IRP_MN_DEVICE_USAGE_NOTIFICATION

IRP_MN_START_DEVICE

IRP_MN_STOP_DEVICE