Función NtQueryInformationTransaction (wdm.h)
La rutina ZwQueryInformationTransaction recupera información sobre una transacción especificada.
Sintaxis
__kernel_entry NTSYSCALLAPI NTSTATUS NtQueryInformationTransaction(
[in] HANDLE TransactionHandle,
[in] TRANSACTION_INFORMATION_CLASS TransactionInformationClass,
[out] PVOID TransactionInformation,
[in] ULONG TransactionInformationLength,
[out, optional] PULONG ReturnLength
);
Parámetros
[in] TransactionHandle
Identificador de un objeto de transacción obtenido por una llamada anterior a ZwCreateTransaction o ZwOpenTransaction. El identificador debe tener TRANSACTION_QUERY_INFORMATION acceso al objeto .
[in] TransactionInformationClass
Valor de tipo TRANSACTION_INFORMATION_CLASSque especifica la información que se va a obtener. El valor debe ser uno de los siguientes valores:
- transactionBasicInformation
- TransactionPropertiesInformation
- TransactionEnlistmentInformation
[out] TransactionInformation
Puntero a un búfer asignado por el autor de la llamada que recibe la información que especifica el parámetro TransactionInformationClass. El tipo de estructura del búfer debe ser TRANSACTION_BASIC_INFORMATION, TRANSACTION_PROPERTIES_INFORMATIONo TRANSACTION_ENLISTMENTS_INFORMATION.
[in] TransactionInformationLength
Longitud, en bytes, del búfer al que apunta el parámetro TransactionInformation , incluida la longitud de los elementos de matriz adicionales a los que el autor de la llamada ha asignado para recibir información.
[out, optional] ReturnLength
Puntero a una variable asignada por el autor de la llamada que recibe la longitud, en bytes, de la información que KTM escribe en el búfer de TransactionInformation. Este parámetro es opcional y se puede NULL.
Valor devuelto
ZwQueryInformationTransaction 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 del parámetro TransactionInformationClass no es válido. |
|
La longitud del búfer especificado por el parámetro TransactionInformationLength es incorrecto. |
|
El identificador que especifica el parámetro TransactionHandle no es un identificador para un objeto de transacción. |
|
Un identificador de objeto no es válido. |
|
El autor de la llamada no tiene el acceso adecuado al objeto de transacción. |
|
El búfer que especifica el parámetro transactionInformation es demasiado pequeño. |
La rutina puede devolver otros valores NTSTATUS de .
Observaciones
Para obtener más información sobre cómo usar ZwQueryInformationTransaction, vea Creación de un cliente transaccional.
NtQueryInformationTransaction y ZwQueryInformationTransaction son dos versiones de la misma rutina de Servicios del 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, Ntddk.h, Ntifs.h) |
biblioteca de | NtosKrnl.lib |
DLL de | NtosKrnl.exe |
irQL | PASSIVE_LEVEL |
reglas de cumplimiento de DDI | HwStorPortProhibitedDIs, PowerIrpDDis |
Consulte también
TRANSACTION_ENLISTMENTS_INFORMATION
TRANSACTION_PROPERTIES_INFORMATION
usar versiones Nt y Zw de las rutinas de servicios del sistema nativo