PPARALLEL_WRITE função de retorno de chamada (parallel.h)
A rotina de retorno de chamada com tipo PPARALLEL_WRITE grava dados em um dispositivo paralelo. O driver de ônibus fornecido pelo sistema para portas paralelas fornece essa rotina.
Sintaxe
PPARALLEL_WRITE PparallelWrite;
NTSTATUS PparallelWrite(
[in] PVOID Context,
[in] PVOID Buffer,
[in] ULONG NumBytesToWrite,
[out] PULONG NumBytesWritten,
[in] UCHAR Channel
)
{...}
Parâmetros
[in] Context
Ponteiro para a extensão de dispositivo do PDO (objeto de dispositivo físico) de um dispositivo paralelo.
[in] Buffer
Ponteiro para um buffer de gravação alocado pelo chamador.
[in] NumBytesToWrite
Especifica o número de bytes a serem copiados do buffer de gravação para o dispositivo paralelo. Deve ser menor ou igual ao número de bytes no buffer de gravação alocado pelo chamador.
[out] NumBytesWritten
Especifica o número de bytes que foram realmente copiados do buffer de gravação alocado pelo chamador para o dispositivo paralelo.
[in] Channel
Não usado.
Retornar valor
Código de retorno | Descrição |
---|---|
|
Os dados fornecidos pelo chamador foram transferidos com êxito para o dispositivo. |
|
Uma operação interna resultou em um erro NTSTATUS. |
Comentários
Para obter um ponteiro para o retorno de chamada PPARALLEL_WRITE fornecido pelo sistema, um driver de modo kernel usa uma solicitação IOCTL_INTERNAL_PARCLASS_CONNECT , que retorna uma estrutura PARCLASS_INFORMATION . O membro ParallelWrite da estrutura PARCLASS_INFORMATION é um ponteiro para esse retorno de chamada.
Um cliente só poderá usar essa rotina se tiver um bloqueio em uma porta paralela. Um cliente obtém um bloqueio em uma porta paralela usando uma solicitação IOCTL_INTERNAL_LOCK_PORT .
O PPARALLEL_WRITE retorno de chamada é executado no thread do chamador no IRQL do chamador.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Área de Trabalho |
Cabeçalho | parallel.h (incluir Parallel.h) |