次の方法で共有


EVT_WDF_IO_TARGET_QUERY_REMOVE コールバック関数 (wdfiotarget.h)

[KMDF と UMDF に適用]

ドライバーの EvtIoTargetQueryRemove イベント コールバック関数は、フレームワークが指定されたリモート I/O ターゲットのデバイスを安全に削除できるかどうかを示します。

構文

EVT_WDF_IO_TARGET_QUERY_REMOVE EvtWdfIoTargetQueryRemove;

NTSTATUS EvtWdfIoTargetQueryRemove(
  [in] WDFIOTARGET IoTarget
)
{...}

パラメーター

[in] IoTarget

I/O ターゲット オブジェクトへのハンドル。

戻り値

EvtIoTargetQueryRemove コールバック関数は、フレームワークが指定された I/O ターゲットのデバイスを安全に削除できるとドライバーが判断した場合に、STATUS_SUCCESSを返す必要があります。 それ以外の場合、このコールバック関数はSTATUS_UNSUCCESSFULを返す必要があります。

注釈

ドライバーの EvtIoTargetQueryRemove コールバック関数がSTATUS_SUCCESSを返す場合、システムは、別のドライバーがSTATUS_UNSUCCESSFULを返す場合を除き、I/O ターゲットのデバイスの削除を許可します。

EvtIoTargetQueryRemove コールバック関数を登録するには、コールバック関数のアドレスを I/O ターゲットの WDF_IO_TARGET_OPEN_PARAMS 構造体に配置します。 EvtIoTargetQueryRemove コールバック関数は省略可能です。 このコールバック関数を指定しないのは、STATUS_SUCCESSを返すのと同じです。

ドライバーが PnP マネージャーがターゲット デバイスを安全に削除できると判断した場合、 EvtIoTargetQueryRemove コールバック関数は WdfIoTargetCloseForQueryRemove を呼び出す必要があります。

コールバック関数は、追加の I/O 要求を I/O ターゲットに送信するドライバーの機能を無効にする必要があります。

EvtIoTargetQueryRemove コールバック関数の詳細については、「一般的な I/O ターゲットの状態の制御」を参照してください。

要件

要件
対象プラットフォーム ユニバーサル
最小 KMDF バージョン 1.0
最小 UMDF バージョン 2.0
Header wdfiotarget.h (Wdf.h を含む)
IRQL PASSIVE_LEVEL

こちらもご覧ください

EvtIoTargetRemoveCanceled

EvtIoTargetRemoveComplete

WDF_IO_TARGET_OPEN_PARAMS

WdfIoTargetCloseForQueryRemove