PPARALLEL_WRITE Rückruffunktion (parallel.h)

Die PPARALLEL_WRITE typisierte Rückrufroutine schreibt Daten auf ein paralleles Gerät. Der vom System bereitgestellte Bustreiber für parallele Ports stellt diese Routine bereit.

Syntax

PPARALLEL_WRITE PparallelWrite;

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

Parameter

[in] Context

Zeiger auf die Geräteerweiterung des physischen Geräteobjekts (PDO) eines parallelen Geräts.

[in] Buffer

Zeiger auf einen vom Aufrufer zugeordneten Schreibpuffer.

[in] NumBytesToWrite

Gibt die Anzahl der Bytes an, die aus dem Schreibpuffer auf das parallele Gerät kopiert werden sollen. Muss kleiner oder gleich der Anzahl der Bytes im vom Aufrufer zugewiesenen Schreibpuffer sein.

[out] NumBytesWritten

Gibt die Anzahl der Bytes an, die tatsächlich aus dem vom Aufrufer zugewiesenen Schreibpuffer auf das parallele Gerät kopiert wurden.

[in] Channel

Wird nicht verwendet.

Rückgabewert

Rückgabecode Beschreibung
STATUS_SUCCESS
Die vom Aufrufer bereitgestellten Daten wurden erfolgreich an das Gerät übertragen.
STATUS_Xxx
Ein interner Vorgang hat zu einem NTSTATUS-Fehler geführt.

Hinweise

Um einen Zeiger auf den vom System bereitgestellten PPARALLEL_WRITE Rückruf zu erhalten, verwendet ein Kernelmodustreiber eine IOCTL_INTERNAL_PARCLASS_CONNECT-Anforderung , die eine PARCLASS_INFORMATION-Struktur zurückgibt. Das ParallelWrite-Element der PARCLASS_INFORMATION-Struktur ist ein Zeiger auf diesen Rückruf.

Ein Client kann diese Routine nur verwenden, wenn er über eine Sperre für einen parallelen Port verfügt. Ein Client ruft mithilfe einer IOCTL_INTERNAL_LOCK_PORT-Anforderung eine Sperre für einen parallelen Port ab.

Der PPARALLEL_WRITE Rückruf wird im Thread des Aufrufers im IRQL des Aufrufers ausgeführt.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile parallel.h (schließen Sie Parallel.h ein)

Weitere Informationen

PPARALLEL_READ

IOCTL_INTERNAL_LOCK_PORT