PnpSurpriseRemove ルール (wdm)
PnpSurpriseRemove ルールは、ドライバーが IRP_MN_SURPRISE_REMOVAL 要求の処理中に IoDeleteDevice または IoDetachDevice を呼び出さないよう指定します。
PnP マネージャーは、 IRP_MN_SURPRISE_REMOVAL 要求を送信して、デバイスが I/O 操作に使用できなくなったこと、およびコンピューターから予期せず削除された可能性があることをドライバーに通知します。
- すべての PnP ドライバーは、 IRP_MN_SURPRI SURPRISE_REMOVAL 要求を処理する必要があります。
- ドライバーは、IRP_MN_SURPRISE_REMOVAL IRP が成功し、デバイスに対するすべての開いているハンドルが閉じられるまで、デバイス オブジェクトで IoDeleteDevice または IoDetachDevice を呼び出す必要があります。
- PnP マネージャーは、デバイス スタックに IRP_MN_REMOVE_DEVICE 要求を送信します。 IRP の削除に応答して、ドライバーは、スタックからデバイス オブジェクトをデタッチし、それらを削除します。
ドライバーが IRP_MN_SURPRISE_REMOVAL 要求に 応答する方法の詳細については、「IRP_MN_SURPRISE_REMOVAL要求の処理」を参照してください
ドライバーモデル: WDM
テスト方法
コンパイル時 |
---|
静的ドライバー検証 を実行し、 PnpSurpriseRemove 規則を指定します。 コードの分析を実行するには、次の手順に従います。詳細については、 「静的ドライバー検証ツールを使用してドライバー の欠陥を見つける」を参照してください。 |
適用対象
関連項目
検証およびコード分析ツールIRP_MN_SURPRISE_REMOVALIRP_MN_REMOVE_DEVICEを使用して、ドライバーを分析する IRP_MN_SURPRISE_REMOVAL 要求の処理