Partager via


SerCxRetrieveReceiveBuffer, fonction (sercx.h)

La méthode SerCxRetrieveReceiveBuffer obtient une mémoire tampon d’entrée dans laquelle les données reçues du port série peuvent être chargées.

Syntaxe

NTSTATUS SerCxRetrieveReceiveBuffer(
  [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 SerCxRetrieveReceiveBuffer réussit, l’appelant reçoit une mémoire tampon d’entrée qui contient jusqu’à Longueur octets de l’espace disponible. (L’espace disponible dans la mémoire tampon peut être inférieur à Longueur octets.) SerCxRetrieveReceiveBuffer écrit le nombre réel d’octets d’espace disponible 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 réception. 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

SerCxRetrieveReceiveBuffer 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 réception.
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 du contrôleur série appelle cette méthode pour acquérir une mémoire tampon contenant les données d’entrée de l’opération de réception (lecture) 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