Función NtOpenTransactionManager (wdm.h)
La rutina ZwOpenTransactionManager obtiene un identificador para un objeto de administrador de transacciones existente.
Sintaxis
__kernel_entry NTSYSCALLAPI NTSTATUS NtOpenTransactionManager(
[out] PHANDLE TmHandle,
[in] ACCESS_MASK DesiredAccess,
[in, optional] POBJECT_ATTRIBUTES ObjectAttributes,
[in, optional] PUNICODE_STRING LogFileName,
[in, optional] LPGUID TmIdentity,
[in, optional] ULONG OpenOptions
);
Parámetros
[out] TmHandle
Puntero a una variable asignada por el autor de la llamada que recibe un identificador del objeto del administrador de transacciones si ZwOpenTransactionManager devuelve STATUS_SUCCESS.
[in] DesiredAccess
Valor ACCESS_MASK que especifica el acceso solicitado del autor de la llamada al objeto del administrador de transacciones. Para obtener información sobre cómo especificar este parámetro, vea el parámetro DesiredAccess de ZwCreateTransactionManager.
[in, optional] ObjectAttributes
Puntero a una estructura OBJECT_ATTRIBUTES que especifica el nombre del objeto y otros atributos. Use la rutina de InitializeObjectAttributes para inicializar esta estructura. Si el autor de la llamada no se ejecuta en un contexto de subproceso del sistema, debe establecer el atributo OBJ_KERNEL_HANDLE cuando llama a InitializeObjectAttributes. Este parámetro es opcional y se puede NULL.
[in, optional] LogFileName
Puntero a una estructura de UNICODE_STRING que contiene la ruta de acceso y el nombre de archivo del flujo de archivos de registro de que se creó cuando se creó el objeto del administrador de transacciones. Para obtener más información, vea el parámetro LogFileName de ZwCreateTransactionManager. Este parámetro es opcional y se puede NULL.
[in, optional] TmIdentity
Puntero a un GUID que identifica el objeto del administrador de transacciones. Este parámetro es opcional y se puede NULL.
[in, optional] OpenOptions
Este parámetro no se usa y debe ser cero.
Valor devuelto
ZwOpenTransactionManager 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 |
---|---|
|
El valor de un parámetro de entrada no es válido. |
|
KTM no pudo asignar recursos del sistema (normalmente memoria). |
|
El nombre de objeto que especifica el parámetro ObjectAttributes no es válido. |
|
KTM encontró un error al crear o abrir el archivo de registro. |
|
El valor del parámetro DesiredAccess no es válido. |
La rutina puede devolver otros valores NTSTATUS de .
Observaciones
El autor de la llamada puede identificar qué objeto de administrador de transacciones se va a abrir mediante una de las tres técnicas siguientes:
- Use el parámetro LogFileName para especificar la ruta de acceso y el nombre de archivo de una secuencia de archivos de registro que se creó cuando se creó el objeto del administrador de transacciones.
- Use el parámetro TmIdentity para especificar el GUID que identifica el objeto del administrador de transacciones.
- Use el parámetro objectAttributes de para proporcionar una estructura OBJECT_ATTRIBUTES que contiene el nombre de objeto que el autor de la llamada especificó anteriormente en la rutina de ZwCreateTransactionManager.
El componente TPS debe llamar a ZwRecoverTransactionManager después de llamar a ZwOpenTransactionManager.
Un componente TPS que llama a ZwOpenTransactionManager debe llamar finalmente a ZwClose para cerrar el identificador de objeto.
Para obtener más información sobre cómo usar ZwOpenTransactionManager, consulte Objetos del Administrador de transacciones y Creación de unde Resource Manager.
NtOpenTransactionManager y ZwOpenTransactionManager son dos versiones de la misma rutina de Servicios de sistema nativo de Windows.
En el caso de las llamadas desde controladores en modo kernel, las NtXxx y Zwversiones de Xxx de una rutina de Servicios del sistema nativo de Windows pueden comportarse 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 de NtXxx y ZwXxx de una rutina, vea Using Nt and Zw Versions of the Native System Services Routines.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Disponible en Windows Vista y versiones posteriores del sistema operativo. |
de la plataforma de destino de | Universal |
encabezado de | wdm.h (include Wdm.h, Ntifs.h) |
biblioteca de | NtosKrnl.lib |
DLL de | NtosKrnl.exe |
irQL | PASSIVE_LEVEL |
reglas de cumplimiento de DDI | HwStorPortProhibitedDIs, PowerIrpDDis |
Consulte también
usar versiones Nt y Zw de las rutinas de servicios del sistema nativo