Partager via


Fonction NtRecoverTransactionManager (wdm.h)

La routine ZwRecoverTransactionManager reconstruit l’état de l’objet gestionnaire de transactions (y compris toutes les transactions, inscriptions et gestionnaires de ressources) à partir des informations de récupération figurant dans le flux de journal.

Syntaxe

__kernel_entry NTSYSCALLAPI NTSTATUS NtRecoverTransactionManager(
  [in] HANDLE TransactionManagerHandle
);

Paramètres

[in] TransactionManagerHandle

Handle vers un objet gestionnaire de transactions obtenu par un appel précédent à ZwCreateTransactionManager ou ZwOpenTransactionManager. Le handle doit avoir TRANSACTIONMANAGER_RECOVER accès à l’objet.

Valeur de retour

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

Retourner le code Description
STATUS_OBJECT_TYPE_MISMATCH
Le handle spécifié n’est pas un handle pour un objet de gestionnaire de transactions.
STATUS_INVALID_HANDLE
Un handle d’objet n’est pas valide.
STATUS_ACCESS_DENIED
L’appelant n’a pas d’accès approprié à l’objet du gestionnaire de transactions.
STATUS_TM_VOLATILE
L’objet du gestionnaire de transactions est volatile et, par conséquent, ses transactions ne peuvent pas être récupérées.
STATUS_UNSUCCESSFUL
L’objet du gestionnaire de transactions n’est pas dans un état qui autorise la récupération.
 

La routine peut retourner d’autres valeurs NTSTATUS .

Remarques

La routine ZwRecoverTransactionManager tente de reconstruire l’état de l’objet gestionnaire de transactions, y compris toutes les transactions, les inscriptions et les gestionnaires de ressources, à partir des informations de récupération figurant dans le flux de journal de l’objet, en commençant au dernier zone de redémarrage que KTM a créé et se termine à la fin du flux.

Pour récupérer jusqu’à une heure virtuelle spécifique, utilisez la routine ZwRollforwardTransactionManager au lieu de ZwRecoverTransactionManager.

Votre composant TPS doit appeler ZwRecoverTransactionManager une fois qu’il a appelé ZwCreateTransactionManager ou ZwOpenTransactionManager.

Pour plus d’informations sur les opérations de récupération, consultez Gestion des opérations de récupération.

NtRecoverTransactionManager et ZwRecoverTransactionManager sont deux versions de la même routine Windows Native System Services.

Pour les appels à partir de pilotes en mode noyau, les versions NtXxx et ZwXxx d’une routine Windows Native System Services peuvent se comporter différemment de la façon dont elles gèrent et interprètent les paramètres d’entrée. Pour plus d’informations sur la relation entre les versions NtXxx et ZwXxx d’une routine, consultez Using Nt and Zw Versions of the Native System Services Routines.

Exigences

Exigence Valeur
client minimum pris en charge Disponible dans Windows Vista et versions ultérieures du système d’exploitation.
plateforme cible Universel
d’en-tête wdm.h (include Wdm.h, Ntifs.h)
bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
règles de conformité DDI HwStorPortProhibitedDDIs, PowerIrpDDis

Voir aussi

TmRecoverTransactionManager

à l’aide de versions Nt et Zw des routines natives des services système

ZwCreateTransactionManager

ZwOpenTransactionManager

ZwRollforwardTransactionManager