次の方法で共有


IWDFIoQueue::RetrieveNextRequestByFileObject メソッド (wudfddi.h)

警告

UMDF 2 は UMDF の最新バージョンであり、UMDF 1 よりも優先されます。 すべての新しい UMDF ドライバーは、UMDF 2 を使用して記述する必要があります。 UMDF 1 には新機能が追加されておらず、Windows 10 の新しいバージョンでは UMDF 1 のサポートが制限されています。 ユニバーサル Windows ドライバーでは、UMDF 2 を使用する必要があります。 詳細については、「UMDFの概要」を参照してください。

RetrieveNextRequestByFileObject メソッドは、ファイル オブジェクトが指定されたファイル オブジェクトと一致する次の I/O 要求を I/O キューから取得します。

構文

HRESULT RetrieveNextRequestByFileObject(
  [in]  IWDFFile      *pFile,
  [out] IWDFIoRequest **ppRequest
);

パラメーター

[in] pFile

ファイル オブジェクトの IWDFFile インターフェイスへのポインター。このインターフェイスは、指定されたファイル オブジェクトとファイル オブジェクトが一致する次の I/O 要求を取得するために使用されます。

[out] ppRequest

指定されたファイル オブジェクトと一致する次の要求オブジェクトの IWDFIoRequest インターフェイスへのポインターを受け取るバッファーへのポインター。キューが空の場合、または次の要求が見つからない場合は、NULL を受け取ります。

戻り値

RetrieveNextRequestByFileObject は、次のいずれかの値を返します。

リターン コード 形容
S_OK 次の I/O 要求は、I/O キューから正常に取得されました。
HRESULT_FROM_NT(STATUS_WDF_PAUSED) キューが要求をディスパッチしていません。 この状況は、デバイスが電源状態の遷移を受け、すべてのキューが要求のディスパッチを停止した場合、またはドライバーが明示的に IWDFIoQueue::Stop を呼び出して要求のディスパッチを停止した場合に発生します。 この状況は、ドライバーが電源管理され、電源がオフになっている手動キューから要求を削除しようとした場合や、キューが一時停止している場合にも発生する可能性があります。
HRESULT_FROM_WIN32(ERROR_NO_MORE_ITEMS) キューに要求がありませんでした。
HRESULT_FROM_NT(STATUS_INVALID_DEVICE_STATE) 並列キューから要求を取得する呼び出しが行われました。

RetrieveNextRequestByFileObject は、他の HRESULT 値も返す場合があります。

備考

ドライバーが I/O 要求を手動でディスパッチするために I/O キューを構成する場合、ドライバーは、RetrieveNextRequestByFileObject メソッドを呼び出して、指定されたファイル オブジェクトと一致するファイル オブジェクトをキューから次の要求を取得できます。 I/O 要求の手動ディスパッチの詳細については、「I/O キューのディスパッチ モードの構成」を参照してください。

pFile パラメーターが指すファイル オブジェクトと一致するファイル オブジェクトを持つ複数の I/O 要求が I/O キューに存在する場合は、最初の I/O 要求が返されます。

RetrieveNextRequestByFileObject メソッドを使用する方法のコード例については、「IWDFIoQueue::RetrieveNextRequest 参照してください。

必要条件

要件 価値
サポート終了 UMDF 2.0 以降では使用できません。
ターゲット プラットフォーム デスクトップ
UMDF の最小バージョン する 1.5
ヘッダー wudfddi.h (Wudfddi.h を含む)
DLL WUDFx.dll

関連項目