Partager via


WdfDmaTransactionRelease, fonction (wdfdmatransaction.h)

[S’applique uniquement à KMDF]

La méthode WdfDmaTransactionRelease met fin à une transaction DMA spécifiée sans supprimer l’objet de transaction DMA associé.

Syntaxe

NTSTATUS WdfDmaTransactionRelease(
  [in] WDFDMATRANSACTION DmaTransaction
);

Paramètres

[in] DmaTransaction

Handle vers un objet de transaction DMA que le pilote a obtenu à partir d’un appel précédent à WdfDmaTransactionCreate.

Valeur de retour

WdfDmaTransactionRelease retourne STATUS_SUCCESS si l’opération réussit. Sinon, la méthode peut retourner la valeur suivante :

Code de retour Description
STATUS_INVALID_DEVICE_STATE
Le pilote a déjà publié ou supprimé l’objet transactionnel spécifié par le paramètre DmaTransaction.
 

Cette méthode peut également retourner d’autres valeurs NTSTATUS .

Une vérification de bogue se produit si le pilote fournit un handle d’objet non valide.

Remarques

La méthode WdfDmaTransactionRelease vide les mémoires tampons de transfert et libère toutes les ressources système associées à la transaction DMA. L’objet de transaction n’est pas supprimé et peut être réutilisé. Pour plus d’informations sur la réutilisation des objets de transaction, consultez réutilisation des objets de transaction DMA.

Si WdfDmaTransactionInitializeXxx retourne la réussite, mais WdfDmaTransactionExecute retourne une valeur d’erreur, votre pilote doit appeler WdfDmaTransactionRelease.

Exemples

L’exemple de code suivant met fin à la transaction DMA que représente l’objet de transaction DMA spécifié, mais ne supprime pas l’objet de transaction DMA.

NTSTATUS  status;

status = WdfDmaTransactionRelease(dmaTransaction);

Spécifications

Besoin Valeur
plateforme cible Universel
version minimale de KMDF 1.0
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), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Voir aussi

WdfDmaTransactionCreate