Freigeben über


SerCxProgressTransmit-Funktion (sercx.h)

Die SerCxProgressTransmit-Methode meldet den Fortschritt des aktuellen Schreibvorgangs (Sendevorgangs).

Syntax

NTSTATUS SerCxProgressTransmit(
  [in] WDFDEVICE    Device,
  [in] ULONG        BytesTransmitted,
  [in] SERCX_STATUS TransmitStatus
);

Parameter

[in] Device

Ein WDFDEVICE-Handle für das Frameworkgerätobjekt, das den seriellen Controller darstellt.

[in] BytesTransmitted

Die Anzahl der Datenbytes, die der Aufrufer aus dem Übertragungspuffer kopiert hat, der durch den letzten Aufruf der SerCxRetrieveTransmitBuffer-Methode abgerufen wurde.

[in] TransmitStatus

Der aktuelle status des Übertragungsvorgangs. Legen Sie diesen Parameter auf einen der folgenden Werte fest:

  • SerCxStatusSuccess
  • SerCxStatusCancelled
Weitere Informationen zu diesen Werten finden Sie unter SERCX_STATUS.
Hinweis Der SerCxStatusTimeout-Wert ist nur für Empfangsvorgänge gültig. Für einen Übertragungsvorgang kann kein Intervalltimeout angegeben werden. Weitere Informationen finden Sie unter SERIAL_TIMEOUTS.
 

Rückgabewert

SerCxProgressTransmit gibt bei erfolgreicher Ausführung STATUS_SUCCESS zurück. Mögliche Fehlerrückgabewerte umfassen die folgenden status-Codes.

Rückgabecode Beschreibung
STATUS_INVALID_PARAMETER
Der Wert BytesTransmitted überschreitet die verfügbare Pufferlänge. oder der Wert "TransmitStatus" ist ungültig.
STATUS_INVALID_DEVICE_REQUEST
Die Methode wurde am falschen IRQL aufgerufen. oder das WDFDEVICE-Handle ist ungültig; oder der Treiber keinen Ausgabepuffer für diesen Übertragungsvorgang erhalten hat.
STATUS_CANCELLED
Der Übertragungsvorgang wurde bereits abgebrochen.

Hinweise

Der serielle Controllertreiber ruft diese Methode auf, um den Fortschritt eines ausstehenden Schreibvorgangs zu melden. In der Regel ruft der Serielle Controllertreiber diese Methode über den DMA-Abschlussrückruf (wenn der Treiber DMA zum Lesen der Daten verwendet) oder über seine Sende-/Empfangs-DPC-Funktion (wenn PIO verwendet wird) auf.

Wenn der SerCxProgressTransmit-Aufruf nicht alle ausstehenden Arbeiten für den Schreibvorgang abschließt, muss der Aufrufer SerCxRetrieveTransmitBuffer erneut aufrufen, um einen neuen Pufferdeskriptor zu erhalten und weiterhin Daten zu übertragen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar ab Windows 8.
Zielplattform Universell
Header sercx.h
IRQL <= DISPATCH_LEVEL

Weitere Informationen

SERCX_STATUS

SERIAL_TIMEOUTS

SerCxRetrieveTransmitBuffer