PPARALLEL_READ callback 函数 (parallel.h)

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

未使用。

返回值

返回代码 说明
STATUS_SUCCESS
请求的数据已成功从设备传输。
STATUS_Xxx
内部操作导致 NTSTATUS 错误。

注解

为了获取指向系统提供的PPARALLEL_READ回调的指针,内核模式驱动程序使用 IOCTL_INTERNAL_PARCLASS_CONNECT 请求,该请求返回 PARCLASS_INFORMATION 结构。 PARCLASS_INFORMATION 结构的 ParallelRead 成员是指向此回调的指针。

如果客户端在并行端口上具有锁,则只能使用此例程。 客户端使用 IOCTL_INTERNAL_LOCK_PORT 请求获取并行端口上的锁。

PPARALLEL_READ回调在调用方 IRQL 的调用方线程中运行。

要求

要求
目标平台 桌面
标头 parallel.h (包括 Parallel.h)

另请参阅

PPARALLEL_WRITE

IOCTL_INTERNAL_LOCK_PORT