PPARALLEL_DESELECT_ROUTINE回调函数 (parallel.h)

PPARALLEL_DESELECT_ROUTINE类型回调例程取消选择 IEEE 1284.3 菊链设备或附加到并行端口的 IEEE 1284 链结束设备。 并行端口的系统提供的函数驱动程序提供此例程。

语法

PPARALLEL_DESELECT_ROUTINE PparallelDeselectRoutine;

NTSTATUS PparallelDeselectRoutine(
  [in] PVOID DeselectContext,
  [in] PVOID DeselectCommand
)
{...}

参数

[in] DeselectContext

指向表示并行端口的功能设备对象的设备扩展(FDO)的指针。

[in] DeselectCommand

指向PARALLEL_1284_COMMAND结构的指针。 调用方指定以下成员:

ID

指定 1284.3 设备 ID(零或 1)。

CommandFlags

指定以下标志中的零个或多个按位 OR:

价值 描述
PAR_END_OF_CHAIN_DEVICE 指定链尾设备。
PAR_HAVE_PORT_KEEP_PORT 指定要保留分配的端口。

返回值

返回代码 描述
STATUS_SUCCESS
设备已取消选中。
STATUS_INVALID_PARAMETER
指定的设备 ID 无效。
STATUS_UNSUCCESSFUL
系统提供的并行端口的函数驱动程序无法取消选择设备。

言论

若要获取指向系统提供的 PPARALLEL_DESELECT_ROUTINE 回调的指针,内核模式驱动程序使用 IOCTL_INTERNAL_GET_PARALLEL_PNP_INFO 请求,该请求返回 PARALLEL_PNP_INFORMATION 结构。 PARALLEL_PNP_INFORMATION结构的 DeselectDevice 成员是指向此回调的指针。

内核模式驱动程序可以使用 IOCTL_INTERNAL_DESELECT_DEVICE 请求或 PPARALLEL_CLEAR_CHIP_MODE 回调来取消选择并行端口所表示的并行端口上的设备。 若要取消选择设备,调用方应分配并行端口。 如果调用方未设置PAR_HAVE_PORT_KEEP_PORT标志,则系统提供的并行端口的函数驱动程序在取消选择设备后释放并行端口。

有关详细信息,请参阅 选择并取消选择附加到 ParallelPort的 IEEE 1284 设备。

要求

要求 价值
目标平台 桌面
标头 parallel.h (include Parallel.h)
IRQL <=DISPATCH_LEVEL

另请参阅

IOCTL_INTERNAL_SELECT_DEVICE

PPARALLEL_TRY_SELECT_ROUTINE

IOCTL_INTERNAL_DESELECT_DEVICE

PARALLEL_PNP_INFORMATION