EVT_WDF_IO_QUEUE_IO_READ fonction de rappel (wdfio.h)
[S’applique à KMDF et UMDF]
La fonction de rappel d’événement EvtIoRead d’un pilote traite une demande de lecture spécifiée.
Syntaxe
EVT_WDF_IO_QUEUE_IO_READ EvtWdfIoQueueIoRead;
void EvtWdfIoQueueIoRead(
[in] WDFQUEUE Queue,
[in] WDFREQUEST Request,
[in] size_t Length
)
{...}
Paramètres
[in] Queue
Handle de l’objet de file d’attente d’infrastructure associé à la demande d’E/S.
[in] Request
Handle pour un objet de requête d’infrastructure.
[in] Length
Nombre d'octets à lire.
Valeur de retour
None
Remarques
Un pilote inscrit une fonction de rappel EvtIoRead lorsqu’il appelle WdfIoQueueCreate. Pour plus d’informations sur l’appel de WdfIoQueueCreate, consultez Création de files d’attente d’E/S.
Si un pilote a inscrit une fonction de rappel EvtIoRead pour la file d’attente d’E/S d’un appareil, la fonction de rappel reçoit chaque demande de lecture de la file d’attente. Pour plus d’informations, consultez Gestionnaires de demandes.
La fonction de rappel EvtIoRead doit traiter chaque demande d’E/S reçue d’une manière ou d’une autre. Pour plus d’informations, consultez Traitement des demandes d’E/S.
Les demandes de lecture nécessitent une mémoire tampon de sortie, qui reçoit les données que le pilote fournit. Pour plus d’informations sur la façon dont le pilote peut accéder à la mémoire tampon d’une demande de lecture, consultez Accès aux mémoires tampons de données dans les pilotes Framework-Based.
Cette fonction de rappel peut être appelée dans IRQL <= DISPATCH_LEVEL, sauf si le membre ExecutionLevel de la structure de WDF_OBJECT_ATTRIBUTES du périphérique ou du pilote est défini sur WdfExecutionLevelPassive.
Si l’IRQL est PASSIVE_LEVEL, l’infrastructure appelle la fonction de rappel dans une région critique.
Pour plus d’informations sur les niveaux IRQL pour les gestionnaires de requêtes, consultez Utilisation de la synchronisation automatique.
La fonction de rappel EvtIoRead d’un pilote ne doit pas appeler les méthodes d’objet file d’attente suivantes :
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
Version KMDF minimale | 1.0 |
Version UMDF minimale | 2.0 |
En-tête | wdfio.h (inclure Wdf.h) |
IRQL | <= DISPATCH_LEVEL (voir la section Notes) |