IOCTL_INTERNAL_DESELECT_DEVICE - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
// parallel.h

// CTL_CODE(0x0016, 0x018, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_INTERNAL_DESELECT_DEVICE 0x00160060
View the official Windows Driver Kit DDI reference

NtDoc

No description available.

Windows Driver Kit DDI reference (ni-parallel-ioctl_internal_deselect_device)

IOCTL_INTERNAL_DESELECT_DEVICE IOCTL

Major Code:

IRP_MJ_DEVICE_CONTROL

Description

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.

Parameters

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.

Input/output buffer

Input/output buffer length

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.

See also

PARALLEL_1284_COMMAND

IOCTL_INTERNAL_SELECT_DEVICE