Méthode IWDFIoRequest ::GetOutputMemory (wudfddi.h)
[Avertissement : UMDF 2 est la dernière version d’UMDF et remplace UMDF 1. Tous les nouveaux pilotes UMDF doivent être écrits à l’aide d’UMDF 2. Aucune nouvelle fonctionnalité n’est ajoutée à UMDF 1 et la prise en charge d’UMDF 1 est limitée sur les versions plus récentes de Windows 10. Les pilotes Windows universels doivent utiliser UMDF 2. Pour plus d’informations, consultez Prise en main avec UMDF.]
La méthode GetOutputMemory récupère l’objet mémoire qui représente la mémoire tampon de sortie pour une demande 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 IWDFMemory comptabilisée en référence pour l’objet mémoire. Notez que le retour de la valeur NULL est valide ; dans ce cas, aucune mémoire de sortie n’est associée à la demande d’E/S.
Valeur de retour
None
Remarques
Les pilotes qui utilisent la méthode d’accès aux E/S mises en mémoire tampon peuvent appeler GetOutputMemory pour obtenir la mémoire tampon de sortie d’une requête d’E/S.
Avant qu’un pilote termine une requête d’E/S, il doit appeler la méthode IWDFMemory ::Release pour l’objet mémoire. L’objet mémoire sous-jacent est libéré lorsque la demande est terminée.
La mémoire tampon de sortie associée à la demande d’E/S contient des informations (par exemple, les données d’un disque) que le pilote fournit à l’initiateur de la requête. Le pilote peut appeler GetOutputMemory pour obtenir la mémoire tampon de sortie pour une demande de lecture ou 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 demande d’E/S, avant d’ajouter la demande 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, il termine la demande d’E/S avec un retour d’échec status 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 demande d’E/S, consultez Accès aux mémoires tampons de données dans les pilotes UMDF-Based.
Exemples
Pour obtenir un exemple de code montrant comment utiliser la méthode GetOutputMemory , consultez IWDFIoQueue ::RetrieveNextRequest.
Configuration requise
Condition requise | Valeur |
---|---|
Fin de la prise en charge | Non disponible dans UMDF 2.0 et versions ultérieures. |
Plateforme cible | Desktop (Expérience utilisateur) |
Version UMDF minimale | 1.5 |
En-tête | wudfddi.h (inclure Wudfddi.h) |
DLL | WUDFx.dll |
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour