Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
[S’applique uniquement à KMDF]
La méthode WdfDmaTransactionSetTransferCompleteCallback inscrit une fonction de rappel d’événement de saisie semi-automatique de transfert pour une transaction DMA en mode système.
Syntaxe
VOID WdfDmaTransactionSetTransferCompleteCallback(
[in] WDFDMATRANSACTION DmaTransaction,
[in, optional] PFN_WDF_DMA_TRANSACTION_DMA_TRANSFER_COMPLETE DmaCompletionRoutine,
[in, optional] PVOID DmaCompletionContext
);
Paramètres
[in] DmaTransaction
Handle vers un objet de transaction DMA initialisé pour lequel définir ou effacer le rappel d’achèvement du transfert.
[in, optional] DmaCompletionRoutine
Pointeur vers le EvtDmaTransactionDmaTransferComplete du pilote fonction de rappel d’événement, ou NULL pour effacer une fonction de rappel définie précédemment.
[in, optional] DmaCompletionContext
Pointeur vers une mémoire tampon contenant le contexte spécifié par le pilote à fournir à la fonction de rappel d’événements EvtDmaTransactionDmaTransferComplete fonction de rappel d’événement ou NULL.
Valeur de retour
Aucun
Remarques
Le pilote appelle cette méthode pour définir une routine d’achèvement que l’infrastructure appelle une fois le contrôleur DMA système terminé un transfert. Le framework appelle le evtDmaTransactionDmaTransferComplete du pilote rappel une fois pour chaque transfert dans la transaction.
En règle générale, à partir d’une fonction de rappel d’événements d’E/S , un pilote effectue les étapes suivantes dans cet ordre :
- Appelle WdfDmaTransactionInitializeUsingRequest, WdfDmaTransactionInitialize, ou WdfDmaTransactionInitializeUsingOffset pour initialiser l’objet transactionnel.
- Appelle WdfDmaTransactionSetTransferCompleteCallback sur l’objet transactionnel.
- Appelle WdfDmaTransactionExecute.
WdfDmaTransactionSetTransferCompleteCallback ne peut être utilisé qu’avec un enabler DMA qui spécifie un profil DMA en mode système.
Si votre pilote appelle cette méthode sur un système d’exploitation antérieur à Windows 8, le vérificateur du framework signale une erreur.
Spécifications
| Besoin | Valeur |
|---|---|
| client minimum pris en charge | Windows 8 |
| plateforme cible | Universel |
| version minimale de KMDF | 1.11 |
| En-tête | wdfdmatransaction.h (include Wdf.h) |
| Bibliothèque | Wdf01000.sys (voir Versioning de la bibliothèque Framework.) |
| IRQL | <=DISPATCH_LEVEL |
| règles de conformité DDI | DriverCreate(kmdf) |