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
指定されたファイル オブジェクトとファイル オブジェクトが一致する次の I/O 要求を取得するために使用されるファイル オブジェクトの IWDFFile インターフェイスへのポインター。
[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 |
Header | wudfddi.h (Wudfddi.h を含む) |
[DLL] | WUDFx.dll |