次の方法で共有


IWDFIoRequest::GetOutputMemory メソッド (wudfddi.h)

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

GetOutputMemory メソッドは、I/O 要求の出力バッファーを表すメモリ オブジェクトを取得します。

構文

void GetOutputMemory(
  [out] IWDFMemory **ppWdfMemory
);

パラメーター

[out] ppWdfMemory

メモリ オブジェクトの参照カウント IWDFMemory インターフェイスへのポインターを受け取る変数へのポインター。 null 返すのが有効であることに注意してください。この状況では、出力メモリは I/O 要求に関連付けされません。

戻り値

何一つ

備考

バッファー I/O アクセス メソッドを使用するドライバーは、GetOutputMemory 呼び出して、I/O 要求の出力バッファーを取得できます。

ドライバーが I/O 要求を完了する前に、ドライバーはメモリ オブジェクトの IWDFMemory::Release メソッドを呼び出す必要があります。 基になるメモリ オブジェクトは、要求が完了すると解放されます。

I/O 要求に関連付けられている出力バッファーには、ドライバーが要求の発信元に提供する情報 (ディスクからのデータなど) が含まれています。 ドライバーは、GetOutputMemory を呼び出して、読み取り要求またはデバイス I/O 制御要求の出力バッファーを取得できますが、書き込み要求には呼び出しません (書き込み要求では出力データが提供されないため)。 出力バッファーにアクセスするには、ドライバーは IWDFMemory::GetDataBuffer メソッドを呼び出す必要があります。

UMDF は、I/O 要求を受信したときに、ドライバーの I/O キューに I/O 要求を追加する前に、I/O 要求のメモリ オブジェクトを作成します。 UMDF は、メモリ オブジェクトのメモリを割り当てることができない場合、エラーの戻り状態で I/O 要求を完了し、ドライバーに I/O 要求を配信しません。

I/O 要求のデータ バッファーへのアクセスの詳細については、「UMDF-Based ドライバー でのデータ バッファーへのアクセス」を参照してください。

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

必要条件

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

関連項目

IWDFIoQueue::RetrieveNextRequest

IWDFIoRequest

IWDFMemory

IWDFMemory::GetDataBuffer