PnP ターゲット デバイス変更通知の使用
ドライバーは、デバイス上の EventCategoryTargetDeviceChange 通知に登録することで、デバイスが削除されるときにドライバーに通知できるようにします。 たとえば、ドライバーがデバイスへのハンドルを開いた場合、PnP マネージャーがデバイスを削除する必要があるときにドライバーがハンドルを閉じることができるように、デバイス上の EventCategoryTargetDeviceChange 通知に登録する必要があります。
ドライバーは、カスタム通知に EventCategoryTargetDeviceChange 通知を使用することもできます。 (PnPカスタム通知の使用を参照してください。)
重要
PnP ターゲット デバイス変更通知の登録は、ターゲット デバイスの電源状態の変更についてリスナーに通知するためのものではありません。 ドライバーがターゲット デバイスの電源変更について知る必要がある場合、ドライバーは代わりにデバイス間の電源関係を定義する必要があります。
電源関係を定義するために、ドライバーは、PowerRelations に設定された Type パラメーターを使用して IoInvalidateDeviceRelations を呼び出し、正しい情報を使用して PowerRelations に対する PnP マネージャーの IRP_MN_QUERY_DEVICE_RELATIONS クエリに応答します。
次のサブセクションでは、ターゲット デバイス変更通知に登録する方法と、PnP 通知コールバック ルーチンでターゲット デバイス変更イベントを処理する方法について説明します。
GUID_TARGET_DEVICE_QUERY_REMOVE イベントの処理