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 |
---|---|
|
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. |
|
La taille incorrecte est spécifiée pour la structure SERCX_BUFFER_DESCRIPTOR . |
|
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 |