IOCTL_INTERNAL_DESELECT_DEVICE IOCTL (parallel.h)

The IOCTL_INTERNAL_DESELECT_DEVICE request deselects an IEEE 1284.3 daisy-chain device or an IEEE 1284 end-of-chain device attached to a parallel port.

For more information, see Selecting and Deselecting an IEEE 1284 Device Attached to a ParallelPort.

Major code

IRP_MJ_INTERNAL_DEVICE_CONTROL

Input buffer

The AssociatedIrp.SystemBuffer member points to a PARALLEL_1284_COMMAND structure that the client allocates to input IEEE 1284.3 command information. The client can free the parallel port by not setting the PAR_HAVE_PORT_KEEP_PORT flag in the CommandFlags member.

Input buffer length

The Parameters.DeviceIoControl.InputBufferLength member specifies the size, in bytes, of the PARALLEL_1284_COMMAND structure.

Output buffer

None.

Output buffer length

None.

Status block

The Information member is set to zero.

The Status member is set to one of the generic status values returned by internal device control requests for parallel ports or to one of the following values:

STATUS_BUFFER_TOO_SMALL

The value of the Parameters.DeviceIoControl.InputBufferLength member is less than the size, in bytes, of a PARALLEL_1284_COMMAND structure.

STATUS_INVALID_PARAMETER

The specified device is not flagged internally as an end-of-chain device, and the specified ID value is greater than the number of existing daisy-chain devices.

Requirements

Requirement Value
Header parallel.h (include Parallel.h)

See also

PARALLEL_1284_COMMAND

IOCTL_INTERNAL_SELECT_DEVICE