EVT_WDF_IO_QUEUE_IO_WRITE fonction de rappel (wdfio.h)

[S’applique à KMDF et UMDF]

La fonction de rappel d’événement EvtIoWrite d’un pilote traite une demande d’écriture spécifiée.

Syntaxe

EVT_WDF_IO_QUEUE_IO_WRITE EvtWdfIoQueueIoWrite;

void EvtWdfIoQueueIoWrite(
  [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 à écrire.

Valeur de retour

None

Remarques

Un pilote inscrit une fonction de rappel EvtIoWrite 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 EvtIoWrite pour la file d’attente d’E/S d’un appareil, la fonction de rappel reçoit chaque demande d’écriture de la file d’attente. Pour plus d’informations, consultez Gestionnaires de demandes.

La fonction de rappel EvtIoWrite 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 d’écriture nécessitent une mémoire tampon d’entrée, qui contient les données que le pilote reçoit. Pour plus d’informations sur la façon dont le pilote peut accéder à la mémoire tampon d’une demande d’écriture, 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 EvtIoWrite d’un pilote ne doit pas appeler les méthodes d’objet file d’attente suivantes :

WdfIoQueueDrainSynchronously
WdfIoQueuePurgeSynchronously
WdfIoQueueStopSynchronously

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)

Voir aussi

EvtIoDefault

WDF_OBJECT_ATTRIBUTES

WdfIoQueueCreate