IOCTL_IEEE1284_NEGOTIATE IOCTL (ntddpar.h)
Die IOCTL_IEEE1284_NEGOTIATE-Anforderung legt die Lese- und Schreibprotokolle fest, die für ein paralleles Gerät verwendet werden. Für diese Anforderung muss der parallele Port, an den das parallele Gerät angeschlossen ist, gesperrt und das parallele Gerät ausgewählt werden. Der vom System bereitgestellte Bustreiber für parallele Ports verhandelt mit dem parallelen Gerät, um die schnellsten Modi zu ermitteln, die sowohl vom Host-Chipsatz als auch vom parallelen Gerät aus den vom Client angegebenen Modi unterstützt werden. Der Treiber für den Parallelportbus legt die Standard-Lese- und Schreibmodi auf die ausgehandelten Modi fest.
Weitere Informationen finden Sie unter Festlegen und Löschen eines Kommunikationsmodus für ein paralleles Gerät.
Hauptcode
Eingabepuffer
Der AssociatedIrp.SystemBuffer-Member verweist auf eine PARCLASS_NEGOTIATION_MASK Struktur, die der Client für die Eingabe und Ausgabe von Modusinformationen zuordnet. Der Client legt die Elemente usReadMask und usWriteMask fest.
Länge des Eingabepuffers
Das Parameters.DeviceIoControl.InputBufferLength-Element ist auf die Größe einer PARCLASS_NEGOTIATION_MASK-Struktur in Bytes festgelegt.
Ausgabepuffer
AssociatedIrp.SystemBuffer verweist auf die PARCLASS_NEGOTIATION_MASK Struktur, die der vom System bereitgestellte Bustreiber für parallele Ports zum Ausgeben von Informationen zum Ausgabemodus verwendet. Der Treiber für den parallelen Portbus legt die Elemente usReadMask und usWriteMask auf die ausgehandelten Modi fest.
Länge des Ausgabepuffers
Die Länge einer PARCLASS_NEGOTIATION_MASK-Struktur .
Statusblock
Wenn die Anforderung erfolgreich ist, wird das Information-Element auf die Größe einer PARCLASS_NEGOTIATION_MASK-Struktur in Bytes festgelegt. Andernfalls wird der Information-Member auf 0 (null) festgelegt.
Der Status-Member wird auf einen der generischen status Werte festgelegt, die von Gerätesteuerungsanforderungen für parallele Geräte zurückgegeben werden, oder auf den folgenden Wert:
STATUS_INVALID_PARAMETER
Der Wert des Parameters.DeviceIoControl.InputBufferLength-Elements ist kleiner als die Größe eines PARCLASS_NEGOTIATION_MASK in Bytes.
Anforderungen
Anforderung | Wert |
---|---|
Header | ntddpar.h (include Ntddpar.h) |