Skip to content

Latest commit

 

History

History
109 lines (70 loc) · 3.57 KB

ni-ntddpar-ioctl_par_is_port_free.md

File metadata and controls

109 lines (70 loc) · 3.57 KB
UID title description old-location tech.root ms.date keywords ms.keywords req.header req.include-header req.target-type req.target-min-winverclnt req.target-min-winversvr req.kmdf-ver req.umdf-ver req.ddi-compliance req.unicode-ansi req.idl req.max-support req.namespace req.assembly req.type-library req.lib req.dll req.irql targetos req.typenames f1_keywords topic_type api_type api_location api_name
NI:ntddpar.IOCTL_PAR_IS_PORT_FREE
IOCTL_PAR_IS_PORT_FREE (ntddpar.h)
The IOCTL_PAR_IS_PORT_FREE request determines if a parallel device's parent parallel port is free at the time the system-supplied bus driver for parallel ports processes the request.
parports\ioctl_par_is_port_free.htm
parports
02/15/2018
IOCTL_PAR_IS_PORT_FREE IOCTL
IOCTL_PAR_IS_PORT_FREE, IOCTL_PAR_IS_PORT_FREE control code [Parallel Ports], cisspd_3f8c9a8d-225c-48cc-b504-235c79037f99.xml, ntddpar/IOCTL_PAR_IS_PORT_FREE, parports.ioctl_par_is_port_free
ntddpar.h
Ntddpar.h
Windows
Windows
OFFLOAD_SECURITY_ASSOCIATION, *POFFLOAD_SECURITY_ASSOCIATION
IOCTL_PAR_IS_PORT_FREE
ntddpar/IOCTL_PAR_IS_PORT_FREE
APIRef
kbSyntax
HeaderDef
ntddpar.h
IOCTL_PAR_IS_PORT_FREE

IOCTL_PAR_IS_PORT_FREE IOCTL

Major Code:

IRP_MJ_DEVICE_CONTROL

-description

The IOCTL_PAR_IS_PORT_FREE request determines if a parallel device's parent parallel port is free at the time the system-supplied bus driver for parallel ports processes the request. This request is provided primarily for user-mode clients.

This request is processed immediately after the I/O manager calls the parallel port bus driver's dispatch routine for device control requests. Note, however, that the status of the parallel port can change between the time that the parallel port bus driver completes the request and the time that control returns to a user-mode client.

Kernel-mode clients can directly determine if a parallel port is free by calling the system-supplied PPARALLEL_TRY_ALLOCATE_ROUTINE callback.

For more information, see Locking and Unlocking a ParallelPort for Use by a Parallel Device.

-ioctlparameters

-ioctl-major-code

-input-buffer

None.

-input-buffer-length

None.

-output-buffer

The AssociatedIrp.SystemBuffer member points to a BOOLEAN buffer that the client allocates to output the status of the parallel port. If the parallel port is free, the system-supplied function driver for parallel ports sets the buffer to TRUE, otherwise it sets the buffer to FALSE.

-output-buffer-length

The length of a BOOLEAN.

-in-out-buffer

-inout-buffer-length

-status-block

The Information member is set to the size, in bytes, of a BOOLEAN.

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

STATUS_BUFFER_TOO_SMALL

The Parameters.DeviceIoControl.OutputBufferLength member is less than the size, in bytes, of a BOOLEAN.

-see-also

IOCTL_INTERNAL_PARALLEL_PORT_FREE

PPARALLEL_TRY_ALLOCATE_ROUTINE

IOCTL_INTERNAL_LOCK_PORT