TmCommitTransaction, fonction (wdm.h)

La routine TmCommitTransaction lance une opération de validation pour une transaction spécifiée.

Syntaxe

NTSTATUS TmCommitTransaction(
  [in] PKTRANSACTION Transaction,
  [in] BOOLEAN       Wait
);

Paramètres

[in] Transaction

Pointeur vers un objet de transaction. Pour obtenir ce pointeur, votre composant TPS doit appeler ObReferenceObjectByHandle et fournir le handle d’objet fourni par un appel précédent à ZwCreateTransaction ou ZwOpenTransaction .

[in] Wait

Valeur booléenne que l’appelant définit sur TRUE pour l’opération synchrone ou FALSE pour l’opération asynchrone. Si ce paramètre a la valeur TRUE, l’appel est retourné une fois l’opération de validation terminée.

Valeur retournée

TmCommitTransaction retourne STATUS_SUCCESS si l’opération réussit. Sinon, cette routine peut retourner l’une des valeurs suivantes :

Code de retour Description
STATUS_TRANSACTION_SUPERIOR_EXISTS
L’appelant ne peut pas valider la transaction, car il existe un gestionnaire de transactions supérieur .
STATUS_TRANSACTION_ALREADY_ABORTED
La transaction ne peut pas être validée, car elle a été restaurée.
STATUS_TRANSACTION_ALREADY_COMMITTED
La transaction est déjà validée.
STATUS_TRANSACTION_REQUEST_NOT_VALID
L’opération de validation de cette transaction a déjà été démarrée.
STATUS_PENDING
Les notifications de validation ont été mises en file d’attente vers les gestionnaires de ressources, et l’appelant a spécifié FALSE pour le paramètre Wait .
 

La routine peut retourner d’autres valeurs NTSTATUS.

Remarques

La routine TmCommitTransaction est une version basée sur des pointeurs de la routine ZwCommitTransaction .

Pour plus d’informations sur l’utilisation des routines TmXxx de KTM au lieu des routines ZwXxx , consultez Utilisation des routines TmXxx.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible dans Windows Vista et versions ultérieures du système d’exploitation.
Plateforme cible Universal
En-tête wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

Voir aussi

ObReferenceObjectByHandle

ZwCommitTransaction

ZwCreateTransaction

ZwOpenTransaction