Compartir a través de


Función NtRecoverTransactionManager (wdm.h)

La rutina ZwRecoverTransactionManager reconstruye el estado del objeto del administrador de transacciones (incluidas todas las transacciones, las inscripciones y los administradores de recursos) a partir de la información de recuperación que se encuentra en el flujo de registro.

Sintaxis

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

Parámetros

[in] TransactionManagerHandle

Identificador de un objeto de administrador de transacciones obtenido por una llamada anterior a ZwCreateTransactionManager o ZwOpenTransactionManager. El identificador debe tener TRANSACTIONMANAGER_RECOVER acceso al objeto .

Valor devuelto

ZwRecoverTransactionManager devuelve STATUS_SUCCESS si la operación se realiza correctamente. De lo contrario, esta rutina podría devolver uno de los siguientes valores:

Código devuelto Descripción
STATUS_OBJECT_TYPE_MISMATCH
El identificador especificado no es un identificador para un objeto de administrador de transacciones.
STATUS_INVALID_HANDLE
Un identificador de objeto no es válido.
STATUS_ACCESS_DENIED
El autor de la llamada no tiene el acceso adecuado al objeto del administrador de transacciones.
STATUS_TM_VOLATILE
El objeto del administrador de transacciones es volátil y, por lo tanto, sus transacciones no se pueden recuperar.
STATUS_UNSUCCESSFUL
El objeto del administrador de transacciones no está en un estado que permita la recuperación.
 

La rutina podría devolver otros valores NTSTATUS.

Comentarios

La rutina ZwRecoverTransactionManager intenta reconstruir el estado del objeto del administrador de transacciones, incluidas todas las transacciones, los inscritos y los administradores de recursos, a partir de la información de recuperación que se encuentra en el flujo de registro del objeto, comenzando en el último área de reinicio que KTM creó y terminó al final de la secuencia.

Para recuperarse hasta un tiempo virtual específico, use la rutina ZwRollforwardTransactionManager en lugar de ZwRecoverTransactionManager.

El componente tpS debe llamar a ZwRecoverTransactionManager después de llamar a ZwCreateTransactionManager o ZwOpenTransactionManager.

Para obtener más información sobre las operaciones de recuperación, consulte Control de operaciones de recuperación.

NtRecoverTransactionManager y ZwRecoverTransactionManager son dos versiones de la misma rutina de Windows Native System Services.

En el caso de las llamadas desde controladores en modo kernel, las versiones NtXxx y ZwXxx de una rutina de Servicios del sistema nativo de Windows se pueden comportar de forma diferente en la forma en que controlan e interpretan los parámetros de entrada. Para obtener más información sobre la relación entre las versiones NtXxx y ZwXxx de una rutina, vea Using Nt and Zw Versions of the Native System Services Routines.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible en Windows Vista y versiones posteriores del sistema operativo.
Plataforma de destino Universal
Encabezado wdm.h (incluya Wdm.h, Ntifs.h)
Library NtosKrnl.lib
Archivo DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
Reglas de cumplimiento de DDI HwStorPortProhibitedDIs, PowerIrpDDis

Consulte también

TmRecoverTransactionManager

Uso de las versiones Nt y Zw de las rutinas nativas de Servicios del sistema

ZwCreateTransactionManager

ZwOpenTransactionManager

ZwRollforwardTransactionManager