Condividi tramite


PPARALLEL_WRITE funzione di callback (parallel.h)

La routine di callback tipizzata PPARALLEL_WRITE scrive i dati in un dispositivo parallelo. Il driver del bus fornito dal sistema per le porte parallele fornisce questa routine.

Sintassi

PPARALLEL_WRITE PparallelWrite;

NTSTATUS PparallelWrite(
  [in]  PVOID Context,
  [in]  PVOID Buffer,
  [in]  ULONG NumBytesToWrite,
  [out] PULONG NumBytesWritten,
  [in]  UCHAR Channel
)
{...}

Parametri

[in] Context

Puntatore all'estensione del dispositivo dell'oggetto dispositivo fisico di un dispositivo parallelo (PDO).

[in] Buffer

Puntatore a un buffer di scrittura allocato dal chiamante.

[in] NumBytesToWrite

Specifica il numero di byte da copiare dal buffer di scrittura al dispositivo parallelo. Deve essere minore o uguale al numero di byte nel buffer di scrittura allocato dal chiamante.

[out] NumBytesWritten

Specifica il numero di byte effettivamente copiati dal buffer di scrittura allocato dal chiamante al dispositivo parallelo.

[in] Channel

Non utilizzato.

Valore restituito

Codice restituito Descrizione
STATUS_SUCCESS
I dati forniti dal chiamante sono stati trasferiti correttamente al dispositivo.
STATUS_xxx
Un'operazione interna ha generato un errore NTSTATUS.

Osservazioni

Per ottenere un puntatore al callback PPARALLEL_WRITE fornito dal sistema, un driver in modalità kernel usa una richiesta di IOCTL_INTERNAL_PARCLASS_CONNECT, che restituisce una struttura PARCLASS_INFORMATION. Il membro ParallelWrite della struttura PARCLASS_INFORMATION è un puntatore a questo callback.

Un client può usare questa routine solo se ha un blocco su una porta parallela. Un client ottiene un blocco su una porta parallela usando una richiesta di IOCTL_INTERNAL_LOCK_PORT.

Il callback PPARALLEL_WRITE viene eseguito nel thread del chiamante in IRQL del chiamante.

Fabbisogno

Requisito Valore
piattaforma di destinazione Desktop
intestazione parallel.h (include Parallel.h)

Vedere anche

PPARALLEL_READ

IOCTL_INTERNAL_LOCK_PORT