IWDFIoRequest ::GetOutputMemory, méthode (wudfddi.h)
[Avertissement : UMDF 2 est la dernière version de UMDF et remplace UMDF 1. Tous les nouveaux pilotes UMDF doivent être écrits à l’aide de UMDF 2. Aucune nouvelle fonctionnalité n’est ajoutée à UMDF 1 et il existe une prise en charge limitée de UMDF 1 sur les versions plus récentes de Windows 10. Les pilotes Windows universels doivent utiliser UMDF 2. Pour plus d’informations, consultez Bien démarrer avec UMDF.]
La méthode GetOutputMemory récupère l’objet mémoire qui représente la mémoire tampon de sortie pour une requête d’E/S.
Syntaxe
void GetOutputMemory(
[out] IWDFMemory **ppWdfMemory
);
Paramètres
[out] ppWdfMemory
Pointeur vers une variable qui reçoit un pointeur vers l’interface de référence IWDFMemory pour l’objet mémoire. Notez que le retour NULL est valide ; dans ce cas, aucune mémoire de sortie n’est associée à la requête d’E/S.
Valeur de retour
Aucun
Remarques
Les pilotes qui utilisent la méthode d’accès mise en mémoire tampon peuvent appeler GetOutputMemory pour obtenir la mémoire tampon de sortie d’une requête d’E/S.
Avant de terminer une requête d’E/S, le pilote doit appeler la méthode IWDFMemory ::Release pour l’objet mémoire. L’objet mémoire sous-jacent est libéré lorsque la requête est terminée.
La mémoire tampon de sortie associée à la requête d’E/S contient des informations (par exemple, des données d’un disque) fournies par le pilote à l’origine de la requête. Le pilote peut appeler GetOutputMemory pour obtenir la mémoire tampon de sortie d’une demande de lecture ou d’une demande de contrôle d’E/S d’appareil, mais pas pour une demande d’écriture (car les demandes d’écriture ne fournissent pas de données de sortie). Pour accéder à la mémoire tampon de sortie, le pilote doit appeler la méthode IWDFMemory ::GetDataBuffer.
UMDF crée les objets mémoire d’une requête d’E/S lorsqu’elle reçoit la requête d’E/S, avant d’ajouter la requête d’E/S à la file d’attente d’E/S d’un pilote. Si UMDF ne peut pas allouer de mémoire pour les objets mémoire, elle termine la demande d’E/S avec un état de retour d’échec et ne remet pas la demande d’E/S au pilote.
Pour plus d’informations sur l’accès aux mémoires tampons de données d’une requête d’E/S, consultez Accès aux mémoires tampons de données dans UMDF-Based Pilotes.
Exemples
Pour obtenir un exemple de code montrant comment utiliser la méthode GetOutputMemory, consultez IWDFIoQueue ::RetrieveNextRequest.
Exigences
Exigence | Valeur |
---|---|
fin du support | Indisponible dans UMDF 2.0 et versions ultérieures. |
plateforme cible | Bureau |
version minimale de UMDF | 1.5 |
d’en-tête | wudfddi.h (include Wudfddi.h) |
DLL | WUDFx.dll |