Freigeben über


IOCTL_SERIAL_LSRMST_INSERT IOCTL (ntddser.h)

Die IOCTL_SERIAL_LSRMST_INSERT Anforderung aktiviert oder deaktiviert das Einfügen von Informationen über den Zeilenstatus und den Modemstatus im 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 clientspezifisches Escapezeichen und eine SERIAL_LSRMST_XXX- Konstante, die den Ereignistyp angibt. Der Treiber unterstützt die folgenden Ereignistypen:

SERIAL_LSRMST_LSR_DATA
Im Zeilenstatus ist eine Änderung aufgetreten. Der Treiber des seriellen Controllers fügt einen Ereignisheader ein, gefolgt von den ereignisspezifischen Daten. Dabei handelt es sich um den Wert des Zeilenstatusregisters, gefolgt von dem Zeichen, das in der Empfangshardware vorhanden ist, wenn die Zeilenstatusänderung verarbeitet wurde.
SERIAL_LSRMST_LSR_NODATA
Eine Zeilenstatusänderung ist aufgetreten, aber im Empfangspuffer waren keine Daten verfügbar. Der Treiber des seriellen Controllers fügt einen Ereignisheader ein, gefolgt von den ereignisspezifischen Daten. Dabei handelt es sich um den Wert des Zeilenstatusregisters, wenn die Zeilenstatusänderung verarbeitet wurde.
SERIAL_LSRMST_MST
Im Modemstatus ist eine Änderung aufgetreten. Der treiber für den seriellen Controller fügt einen Ereignisheader ein, gefolgt von den ereignisspezifischen Daten. Dabei handelt es sich um den Wert des Modemstatusregisters, wenn die Änderung des Modemstatus verarbeitet wurde.
SERIAL_LSRMST_ESCAPE
Gibt an, dass das nächste Zeichen im Empfangendatenstrom, das vom Gerät empfangen wurde, identisch mit dem clientspezifischen Escapezeichen ist. Der treiber des seriellen Controllers fügt einen Ereignisheader ein. Es gibt keine ereignisspezifischen Daten.

Hauptcode

IRP_MJ_DEVICE_CONTROL

Eingabepuffer

Der AssociatedIrp.SystemBuffer Member verweist auf einen clientverteilten UCHAR-Eingabewert, der als Escapezeichen verwendet werden soll. Wenn das Escapezeichen ungleich Null ist, wird das Einfügen aktiviert, und der serielle Treiber verwendet das angegebene Escapezeichen. Andernfalls ist die Einfügung deaktiviert.

Eingabepufferlänge

Das Parameters.DeviceIoControl.InputBufferLength Member wird auf die Größe eines UCHAR-Elements in Bytes festgelegt.

Ausgabepuffer

Nichts.

Länge des Ausgabepuffers

Nichts.

Statusblock

Wenn die Anforderung erfolgreich ist, wird das Information Member auf die Größe eines UCHAR-Elements in Byte festgelegt. Andernfalls wird Information auf Null festgelegt.

Der Status- Member ist auf einen der generischen Statuswerte für anforderungen für serielle Gerätesteuerungfestgelegt. Ein Status von STATUS_INVALID_PARAMETER gibt an, dass das angegebene Escapezeichen mit dem XON -Zeichen (Übertragung ein) oder dem XOFF -Zeichen (Übertragung aus) identisch ist oder dass die Fehlerersetzung mit der Handshake-Flusssteuerung aktiviert ist.

Anforderungen

Anforderung Wert
Header- ntddser.h (include Ntddser.h)