Fonction SerCxProgressTransmit (sercx.h)
La méthode SerCxProgressTransmit indique la progression de l’opération d’écriture (transmission) en cours.
Syntaxe
NTSTATUS SerCxProgressTransmit(
[in] WDFDEVICE Device,
[in] ULONG BytesTransmitted,
[in] SERCX_STATUS TransmitStatus
);
Paramètres
[in] Device
Un handle WDFDEVICE pour l’objet d’appareil framework qui représente le contrôleur série.
[in] BytesTransmitted
Nombre d’octets de données que l’appelant a copiés à partir de la mémoire tampon de transmission obtenue par le dernier appel à la méthode SerCxRetrieveTransmitBuffer .
[in] TransmitStatus
Status actuelle de l’opération de transmission. Définissez ce paramètre sur l’une des valeurs suivantes :
- SerCxStatusSuccess
- SerCxStatusCancelled
Valeur retournée
SerCxProgressTransmit retourne STATUS_SUCCESS si elle réussit. Les valeurs de retour d’erreur possibles incluent les codes status suivants.
Code de retour | Description |
---|---|
|
La valeur BytesTransmitted dépasse la longueur de mémoire tampon disponible ; ou la valeur TransmitStatus n’est pas valide. |
|
La méthode a été appelée au niveau de l’IRQL incorrect ; ou le handle WDFDEVICE n’est pas valide ; ou le pilote n’a pas obtenu de mémoire tampon de sortie pour cette opération de transmission. |
|
L’opération de transmission a déjà été annulée. |
Remarques
Le pilote du contrôleur série appelle cette méthode pour signaler la progression d’une opération d’écriture en cours. En règle générale, le pilote de contrôleur série appelle cette méthode à partir de son rappel d’achèvement DMA (si le pilote utilise DMA pour lire les données) ou de sa fonction DPC de transmission/réception (si PIO est utilisé).
Si l’appel SerCxProgressTransmit ne termine pas tout le travail en suspens pour l’opération d’écriture, l’appelant doit appeler À nouveau SerCxRetrieveTransmitBuffer pour obtenir un nouveau descripteur de mémoire tampon et continuer à transmettre des données.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible à partir de Windows 8. |
Plateforme cible | Universal |
En-tête | sercx.h |
IRQL | <= DISPATCH_LEVEL |