Partilhar via


PPARALLEL_DESELECT_ROUTINE função de retorno de chamada (parallel.h)

A rotina de retorno de chamada digitada PPARALLEL_DESELECT_ROUTINEdesmarca um dispositivo de cadeia de margaridas IEEE 1284.3 ou um dispositivo de fim de cadeia IEEE 1284 anexado a uma porta paralela. O driver de funções fornecido pelo sistema para portas paralelas fornece essa rotina.

Sintaxe

PPARALLEL_DESELECT_ROUTINE PparallelDeselectRoutine;

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

Parâmetros

[in] DeselectContext

Ponteiro para a extensão do dispositivo de um objeto de dispositivo funcional (FDO) que representa uma porta paralela.

[in] DeselectCommand

Ponteiro para uma estrutura PARALLEL_1284_COMMAND. O chamador especifica os seguintes membros:

ID

Especifica a ID do dispositivo 1284.3 (zero ou 1).

CommandFlags

Especifica um OR bit a bit de zero ou mais dos seguintes sinalizadores:

Valor Descrição
PAR_END_OF_CHAIN_DEVICE Especifica um dispositivo de fim de cadeia.
PAR_HAVE_PORT_KEEP_PORT Especifica que a porta seja mantida alocada.

Valor de retorno

Código de retorno Descrição
STATUS_SUCCESS
O dispositivo foi desmarcado.
STATUS_INVALID_PARAMETER
A ID do dispositivo especificada é inválida.
STATUS_UNSUCCESSFUL
O driver de função fornecido pelo sistema para portas paralelas não pôde desmarcar o dispositivo.

Observações

Para obter um ponteiro para o retorno de chamada PPARALLEL_DESELECT_ROUTINE fornecido pelo sistema, um driver de modo kernel usa uma solicitação IOCTL_INTERNAL_GET_PARALLEL_PNP_INFO, que retorna uma estrutura PARALLEL_PNP_INFORMATION. O DeselectDevice membro da estrutura PARALLEL_PNP_INFORMATION é um ponteiro para esse retorno de chamada.

Um driver no modo kernel pode usar uma solicitação IOCTL_INTERNAL_DESELECT_DEVICE ou o retorno de chamada PPARALLEL_CLEAR_CHIP_MODE para desmarcar um dispositivo em uma porta paralela representada por uma porta paralela. Para desmarcar um dispositivo, um chamador deve ter a porta paralela alocada. Se o chamador não definir o sinalizador PAR_HAVE_PORT_KEEP_PORT, o driver de função fornecido pelo sistema para portas paralelas liberará a porta paralela após a desseleção do dispositivo.

Para obter mais informações, consulte Selecionar e desmarcar um dispositivo IEEE 1284 anexado a umParallelPort.

Requisitos

Requisito Valor
da Plataforma de Destino Área de trabalho
cabeçalho parallel.h (incluir Parallel.h)
IRQL <=DISPATCH_LEVEL

Consulte também

IOCTL_INTERNAL_SELECT_DEVICE

PPARALLEL_TRY_SELECT_ROUTINE

IOCTL_INTERNAL_DESELECT_DEVICE

PARALLEL_PNP_INFORMATION