Поделиться через


Функция NtQueryInformationTransaction (wdm.h)

Программа ZwQueryInformationTransaction извлекает сведения об указанной транзакции.

Синтаксис

__kernel_entry NTSYSCALLAPI NTSTATUS NtQueryInformationTransaction(
  [in]            HANDLE                        TransactionHandle,
  [in]            TRANSACTION_INFORMATION_CLASS TransactionInformationClass,
  [out]           PVOID                         TransactionInformation,
  [in]            ULONG                         TransactionInformationLength,
  [out, optional] PULONG                        ReturnLength
);

Параметры

[in] TransactionHandle

Дескриптор объекта транзакции , полученный предыдущим вызовом ZwCreateTransaction или ZwOpenTransaction. Дескриптор должен иметь TRANSACTION_QUERY_INFORMATION доступ к объекту.

[in] TransactionInformationClass

Значение типа TRANSACTION_INFORMATION_CLASS, указывающее сведения для получения. Значение должно быть одним из следующих значений:

  • TransactionBasicInformation
  • TransactionPropertiesInformation
  • TransactionEnlistmentInformation
Значение TransactionFullInformation не используется с ZwQueryInformationTransaction.

[out] TransactionInformation

Указатель на выделенный вызывающим буфером, который получает сведения, которые указывает параметр TransactionInformationClass. Тип структуры буфера должен быть TRANSACTION_BASIC_INFORMATION, TRANSACTION_PROPERTIES_INFORMATIONили TRANSACTION_ENLISTMENTS_INFORMATION.

[in] TransactionInformationLength

Длина буфера в байтах, на который указывает параметр TransactionInformation, включая длину всех дополнительных элементов массива, выделенных вызывающей функцией для получения информации.

[out, optional] ReturnLength

Указатель на выделенную вызывающим переменную, которая получает длину в байтах информации, записываемой KTM в буфер TransactionInformation. Этот параметр является необязательным и может быть null.

Возвращаемое значение

ZwQueryInformationTransaction возвращает STATUS_SUCCESS, если операция выполнена успешно. В противном случае эта подпрограмма может вернуть одно из следующих значений:

Возвращаемый код Описание
STATUS_INVALID_INFO_CLASS
Значение параметра TransactionInformationClass недопустимо.
STATUS_INFO_LENGTH_MISMATCH
Длина буфера, указанного параметром TransactionInformationLength, является неверным.
STATUS_OBJECT_TYPE_MISMATCH
Дескриптор, который указывает параметр TransactionHandle, не является дескриптором объекта транзакции.
STATUS_INVALID_HANDLE
Дескриптор объекта недопустим.
STATUS_ACCESS_DENIED
Вызывающий объект не имеет соответствующего доступа к объекту транзакции.
STATUS_BUFFER_OVERFLOW
Буфер, который указывает параметр TransactionInformation , слишком мал.
 

Подпрограмма может возвращать другие значения NTSTATUS .

Замечания

Дополнительные сведения об использовании ZwQueryInformationTransactionсм. в созданииклиента транзакций.

NtQueryInformationTransaction и ZwQueryInformationTransaction являются двумя версиями одной подпрограммы windows Native System Services.

Для вызовов драйверов в режиме ядра NtXxx и ZwXxx версии подпрограммы Windows Native System Services могут вести себя по-разному в том, как они обрабатывают и интерпретируют входные параметры. Дополнительные сведения о связи между NtXxx и ZwXxx версиями подпрограммы см. в разделе Using Nt and Zw Versions of the Native System Services Routines.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Доступно в Windows Vista и более поздних версиях операционной системы.
целевая платформа Всеобщий
заголовка wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
библиотеки NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
правил соответствия DDI HwStorPortProhibitedDDIs, PowerIrpDDis

См. также

TRANSACTION_BASIC_INFORMATION

TRANSACTION_ENLISTMENTS_INFORMATION

TRANSACTION_INFORMATION_CLASS

TRANSACTION_PROPERTIES_INFORMATION

TmGetTransactionId

использование версий собственных системных служб и Zw

ZwCreateTransaction

ZwOpenTransaction

ZwSetInformationTransaction