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

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 contenant jusqu’à Longueur octets d’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 pointée par le paramètre BufferDescriptor .

[in, out] BufferDescriptor

Pointeur vers une structure 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 le de mémoire tampon et les membres Length de cette structure.

Valeur de retour

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

Retourner le code Description
STATUS_INVALID_DEVICE_REQUEST
La méthode a été appelée au mauvais IRQL ; ou le handle WDFDEVICE n’est pas valide ; ou device ou BufferDescriptor est NULL ; ou le pilote a déjà 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 de contrôleur série appelle cette méthode pour acquérir une mémoire tampon pour contenir des données d’entrée de l’opération de réception (lecture) actuelle.

Exigences

Exigence Valeur
client minimum pris en charge Disponible à partir de Windows 8.
plateforme cible Universel
d’en-tête sercx.h
IRQL <= DISPATCH_LEVEL

Voir aussi

SERCX_BUFFER_DESCRIPTOR

SERCX_BUFFER_DESCRIPTOR_INIT