IOCTL_SERIAL_LSRMST_INSERT IOCTL (ntddser.h)
Die IOCTL_SERIAL_LSRMST_INSERT-Anforderung aktiviert oder deaktiviert das Einfügen von Informationen zu Zeilen- status und Modem-status in den Empfangsdatenstrom. Wenn die LSRMST-Einfügung aktiviert ist, fügt der Treiber Ereignisinformationen für die unterstützten Ereignistypen ein. Die Ereignisinformationen enthalten einen Ereignisheader gefolgt von ereignisspezifischen Daten.
Der Ereignisheader enthält ein vom Client angegebenes Escapezeichen und eine SERIAL_LSRMST_XXX-Konstante , die den Ereignistyp angibt. Der Treiber unterstützt die folgenden Ereignistypen:
- SERIAL_LSRMST_LSR_DATA
- In der Zeile status ist eine Änderung aufgetreten. Der Serielle Controllertreiber fügt einen Ereignisheader gefolgt von den ereignisspezifischen Daten ein. Dabei handelt es sich um den Wert der Zeile status Registers, gefolgt von dem Zeichen, das in der Empfangshardware vorhanden ist, wenn die Zeilenänderung status verarbeitet wurde.
- SERIAL_LSRMST_LSR_NODATA
- Es ist eine Zeile status Änderung aufgetreten, aber im Empfangspuffer waren keine Daten verfügbar. Der serielle Controllertreiber fügt einen Ereignisheader gefolgt von den ereignisspezifischen Daten ein. Dies ist der Wert der Zeile status registrieren, wenn die Zeile status Änderung verarbeitet wurde.
- SERIAL_LSRMST_MST
- Es ist eine Änderung am Modem status aufgetreten. Der Treiber des seriellen Controllers fügt einen Ereignisheader gefolgt von den ereignisspezifischen Daten ein. Dies ist der Wert des Modems status registrieren, wenn die Änderung des Modems status verarbeitet wurde.
- SERIAL_LSRMST_ESCAPE
- Gibt an, dass das nächste Zeichen im Empfangsdatenstrom, das vom Gerät empfangen wurde, mit dem vom Client angegebenen Escapezeichen identisch ist. Der Treiber des seriellen Controllers fügt einen Ereignisheader ein. Es gibt keine ereignisspezifischen Daten.
Hauptcode
Eingabepuffer
Der AssociatedIrp.SystemBuffer-Member verweist auf einen vom Client zugewiesenen UCHAR-Eingabewert, der als Escapezeichen verwendet werden soll. Wenn das Escapezeichen ungleich null ist, wird die Einfügung aktiviert, und der serielle Treiber verwendet das angegebene Escapezeichen. Andernfalls ist die Einfügung deaktiviert.
Länge des Eingabepuffers
Das Parameters.DeviceIoControl.InputBufferLength-Element wird auf die Größe einer UCHAR in Bytes festgelegt.
Ausgabepuffer
Keine.
Länge des Ausgabepuffers
Keine.
Statusblock
Wenn die Anforderung erfolgreich ist, wird das Information-Element auf die Größe einer UCHAR in Bytes festgelegt. Andernfalls wird Information auf 0 (null) festgelegt.
Das Element Status ist auf einen der generischen Statuswerte für Anforderungen der seriellen Gerätesteuerung festgelegt. Eine status von STATUS_INVALID_PARAMETER gibt an, dass das angegebene Escapezeichen mit dem XON-Zeichen (ein übertragen) oder dem XOFF-Zeichen (transmit off) identisch ist oder dass die Fehlerersetzung mit der Handshakeflusssteuerung aktiviert ist.
Anforderungen
Anforderung | Wert |
---|---|
Header | ntddser.h (include Ntddser.h) |