[KMDF と UMDF に適用]
ドライバーの EvtIoWrite イベント コールバック関数は、指定された書き込み要求を処理します。
構文
EVT_WDF_IO_QUEUE_IO_WRITE EvtWdfIoQueueIoWrite;
VOID EvtWdfIoQueueIoWrite(
[in] WDFQUEUE Queue,
[in] WDFREQUEST Request,
[in] size_t Length
)
{...}
パラメーター
[in] Queue
I/O 要求に関連付けられているフレームワーク キュー オブジェクトへのハンドル。
[in] Request
フレームワーク要求オブジェクトへのハンドル。
[in] Length
書き込むバイト数。
戻り値
なし
注釈
ドライバーは、WdfIoQueueCreateを呼び出すときに、EvtIoWrite コールバック関数を登録します。 WdfIoQueueCreate 呼び出しの詳細については、「I/O キューの作成を参照してください。
ドライバーがデバイスの I/O キューの EvtIoWrite コールバック関数を登録している場合、コールバック関数はキューからすべての書き込み要求を受け取ります。 詳細については、「要求ハンドラーの」を参照してください。
EvtIoWrite コールバック関数は、受信した各 I/O 要求を何らかの方法で処理する必要があります。 詳細については、「I/O 要求の処理」を参照してください。
書き込み要求には、ドライバーが受け取るデータを含む入力バッファーが必要です。 ドライバーが書き込み要求のバッファーにアクセスする方法については、「Framework-Based ドライバー でデータ バッファーにアクセスするを参照してください。
このコールバック関数は、デバイスまたはドライバーの WDF_OBJECT_ATTRIBUTES 構造体の ExecutionLevel メンバーが WdfExecutionLevelPassive に設定されていない限り、IRQL <= DISPATCH_LEVEL で呼び出すことができます。
IRQL がPASSIVE_LEVELされている場合、フレームワークは、の重要なリージョン内でコールバック関数を呼び出します。
要求ハンドラーの IRQL レベルの詳細については、「自動同期の使用」を参照してください。
ドライバーの EvtIoWrite コールバック関数は、次のキュー オブジェクト メソッドを呼び出さないでください。
必要条件
要件 | 価値 |
---|---|
ターゲット プラットフォーム の | 普遍 |
最小 KMDF バージョン | 1.0 |
UMDF の最小バージョン を する | 2.0 |
ヘッダー | wdfio.h (Wdf.h を含む) |
IRQL | <= DISPATCH_LEVEL (「解説」セクションを参照) |
こちらもご覧ください
EvtIoDefault の