PPARALLEL_READ類型的回呼例程會從平行裝置讀取數據。 平行埠的系統提供總線驅動程式會提供此例程。
語法
PPARALLEL_READ PparallelRead;
NTSTATUS PparallelRead(
[in] PVOID Context,
[out] PVOID Buffer,
[in] ULONG NumBytesToRead,
[out] PULONG NumBytesRead,
[in] UCHAR Channel
)
{...}
參數
[in] Context
平行裝置實體裝置物件的裝置延伸模組指標(PDO)。
[out] Buffer
呼叫端配置的讀取緩衝區指標。
[in] NumBytesToRead
指定要讀取的位元元組數目。 必須小於或等於呼叫端配置的讀取緩衝區中的位元元組數目。
[out] NumBytesRead
指定實際從平行裝置讀取的位元組數目,並儲存在呼叫端配置的讀取緩衝區中。
[in] Channel
未使用。
傳回值
| 傳回碼 | 描述 |
|---|---|
|
要求的數據已成功從裝置傳輸。 |
|
內部作業導致 NTSTATUS 錯誤。 |
言論
若要取得系統提供的PPARALLEL_READ回呼指標,內核模式驅動程式會使用傳回 PARCLASS_INFORMATION 結構的 IOCTL_INTERNAL_PARCLASS_CONNECT 要求。 PARCLASS_INFORMATION 結構的 ParallelRead 成員是這個回呼的指標。
如果用戶端在平行埠上有鎖定,則用戶端只能使用此例程。 用戶端會使用 IOCTL_INTERNAL_LOCK_PORT 要求取得平行埠上的鎖定。
PPARALLEL_READ回呼會在呼叫端的 IRQL 的呼叫端線程中執行。
要求
| 要求 | 價值 |
|---|---|
| 目標平臺 | 桌面 |
| 標頭 | parallel.h (include Parallel.h) |