Partager via


SerCxRetrieveReceiveMdl, fonction (sercx.h)

La méthode SerCxRetrieveReceiveMdl récupère le MDL qui décrit la mémoire tampon à utiliser pour recevoir le bloc de données d’entrée suivant.

Syntaxe

NTSTATUS SerCxRetrieveReceiveMdl(
  [in]  WDFDEVICE Device,
  [out] PMDL      *Mdl
);

Paramètres

[in] Device

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

[out] Mdl

Pointeur vers un emplacement dans lequel la méthode écrit un pointeur dans le MDL.

Valeur de retour

SerCxRetrieveReceiveMdl retourne STATUS_SUCCESS si l’appel réussit. Les valeurs de retour possibles incluent les codes d’erreur suivants.

Retourner le code Description
STATUS_INVALID_DEVICE_REQUEST
Cette valeur est retournée si l’une des opérations suivantes se produit :
  • Il n’existe aucune demande de réception en attente d’obtention d’un MDL.
  • Le nombre actuel d’octets reçus (comme indiqué par la méthode SerCxProgressReceive) n’est pas égal à zéro.
  • La mémoire tampon a déjà été récupérée (et l’appel correspondant à la méthode SerCxProgressReceive n’a pas encore eu lieu).
  • Le MDL a déjà été récupéré (et l’appel correspondant à la méthode SerCxProgressReceive n’a pas encore eu lieu).

Remarques

Le pilote du contrôleur série appelle cette fonction pour obtenir un MDL à utiliser pour l’opération de réception (lecture) actuelle. Le MDL décrit la mémoire tampon dans laquelle le pilote doit transférer les données reçues. Le pilote est le propriétaire exclusif de ce MDL jusqu’à ce qu’il appelle la méthode SerCxProgressRece ive, après laquelle le pointeur MDL n’est pas valide et que le pilote ne doit plus essayer d’accéder à la mémoire MDL ou à la mémoire tampon décrite par le MDL.

Pour plus d’informations sur les DLL, consultez Utilisation de MDLs.

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

SerCxProgressReceive