Partager via


Fonction SerCxRetrieveTransmitBuffer (sercx.h)

La méthode SerCxRetrieveTransmitBuffer obtient une mémoire tampon de sortie qui contient des données prêtes à être transmises au port série.

Syntaxe

NTSTATUS SerCxRetrieveTransmitBuffer(
  [in]      WDFDEVICE                Device,
  [in]      ULONG                    Length,
  [in, out] PSERCX_BUFFER_DESCRIPTOR BufferDescriptor
);

Paramètres

[in] Device

Un handle WDFDEVICE pour l’objet d’appareil framework qui représente le contrôleur série.

[in] Length

Longueur de la mémoire tampon demandée, en octets. Si l’appel de SerCxRetrieveTransmitBuffer réussit, l’appelant reçoit une mémoire tampon de sortie qui contient jusqu’à longueur d’octets de données disponibles. (Les données disponibles dans la mémoire tampon peuvent être inférieures à des octets de longueur .) SerCxRetrieveTransmitBuffer écrit le nombre réel d’octets de données disponibles dans le membre Length de la structure vers laquelle pointe le paramètre BufferDescriptor .

[in, out] BufferDescriptor

Pointeur vers une structure de SERCX_BUFFER_DESCRIPTOR allouée par l’appelant. Cette structure décrit la mémoire tampon de données à utiliser pour l’opération de transmission. L’appelant a précédemment appelé la fonction SERCX_BUFFER_DESCRIPTOR_INIT pour initialiser cette structure. SerCxRetrieveTransmitBuffer écrit dans les membres Buffer et Length de cette structure.

Valeur retournée

SerCxRetrieveTransmitBuffer retourne STATUS_SUCCESS si elle réussit. Les valeurs de retour d’erreur possibles incluent les codes status suivants.

Code de retour Description
STATUS_INVALID_DEVICE_REQUEST
La méthode a été appelée au niveau de l’IRQL incorrect ; ou le handle WDFDEVICE n’est pas valide ; ou device ou BufferDescriptor a la valeur NULL ; ou le pilote dispose déjà d’une mémoire tampon de transmission.
STATUS_INFO_LENGTH_MISMATCH
La taille incorrecte est spécifiée pour la structure SERCX_BUFFER_DESCRIPTOR .
STATUS_INSUFFICIENT_RESOURCES
Impossible d’allouer des ressources système (généralement de la mémoire).

Remarques

Le pilote de contrôleur série appelle cette méthode pour acquérir une mémoire tampon qui contient les données de sortie de l’opération de transmission (écriture) en cours.

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

Voir aussi

SERCX_BUFFER_DESCRIPTOR

SERCX_BUFFER_DESCRIPTOR_INIT