SerCxProgressReceive 関数 (sercx.h)
SerCxProgressReceive メソッドは、現在の読み取り (受信) 操作の進行状況を報告します。
構文
NTSTATUS SerCxProgressReceive(
[in] WDFDEVICE Device,
[in] ULONG BytesReceived,
[in] SERCX_STATUS ReceiveStatus
);
パラメーター
[in] Device
シリアル コントローラーを表すフレームワーク デバイス オブジェクトへの WDFDEVICE ハンドル。
[in] BytesReceived
SerCxRetrieveReceiveBuffer メソッドの最新の呼び出しによって取得された受信バッファーに呼び出し元が読み込んだデータのバイト数。
[in] ReceiveStatus
受信操作の現在の状態。 このパラメーターを次のいずれかの値に設定します。
- SerCxStatusSuccess の
- SerCxStatusCancelled
- SerCxStatusTimeout を
する
戻り値
SerCxProgressReceive
リターン コード | 形容 |
---|---|
|
BytesReceived 値が使用可能なバッファー長を超えています。または、ReceiveStatus 値が無効です。 |
|
メソッドが間違った IRQL で呼び出されました。または WDFDEVICE ハンドルが無効です。または、ドライバーがこの受信操作の入力バッファーを取得していません。 |
|
受信操作は既に取り消されています。 |
備考
シリアル コントローラー ドライバーは、未処理の読み取り操作の進行状況を報告するには、このメソッドを呼び出します。 通常、シリアル コントローラー ドライバーは、DMA 完了コールバック (ドライバーが DMA を使用してデータを読み取る場合) または送信/受信 DPC 関数 (PIO が使用されている場合) から、このメソッドを呼び出します。
SerCxProgressReceive が読み取り操作のすべての未処理の作業を完了していない場合、呼び出し元は、新しいバッファー記述子を取得し、データを受信し続けるために、SerCxRetrieveReceiveBuffer メソッドをもう一度呼び出す必要があります。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 8 以降で使用できます。 |
ターゲット プラットフォーム の |
万国 |
ヘッダー | sercx.h |
IRQL | <= DISPATCH_LEVEL |
関連項目
SerCxRetrieveReceiveBuffer の