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


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

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

Синтаксис

__kernel_entry NTSYSCALLAPI NTSTATUS NtQueryInformationTransactionManager(
  [in]            HANDLE                               TransactionManagerHandle,
  [in]            TRANSACTIONMANAGER_INFORMATION_CLASS TransactionManagerInformationClass,
  [out]           PVOID                                TransactionManagerInformation,
  [in]            ULONG                                TransactionManagerInformationLength,
  [out, optional] PULONG                               ReturnLength
);

Параметры

[in] TransactionManagerHandle

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

[in] TransactionManagerInformationClass

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

  • TransactionManagerBasicInformation
  • TransactionManagerLogInformation
  • TransactionManagerLogPathInformation
Значение TransactionManagerOnlineProbeInformation перечисления не используется с ZwQueryInformationTransactionManager.

[out] TransactionManagerInformation

Указатель на буфер, выделенный вызывающим объектом, который получает сведения, указываемые параметром TransactionManagerInformationClass . Тип структуры буфера должен быть TRANSACTIONMANAGER_BASIC_INFORMATION, TRANSACTIONMANAGER_LOG_INFORMATION, TRANSACTIONMANAGER_LOGPATH_INFORMATION или TRANSACTIONMANAGER_RECOVERY_INFORMATION.

[in] TransactionManagerInformationLength

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

[out, optional] ReturnLength

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

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

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

Код возврата Описание
STATUS_INVALID_INFO_CLASS
Недопустимое значение параметра TransactionManagerInformationClass .
STATUS_INFO_LENGTH_MISMATCH
Длина буфера, указанная параметром TransactionManagerInformationLength , неверна.
STATUS_OBJECT_TYPE_MISMATCH
Указанный дескриптор не является дескриптором для объекта диспетчера транзакций.
STATUS_INVALID_HANDLE
Недопустимый дескриптор объекта.
STATUS_ACCESS_DENIED
Вызывающий объект не имеет соответствующего доступа к объекту диспетчера транзакций.
STATUS_BUFFER_TOO_SMALL
Буфер, заданный параметром TransactionManagerInformation , слишком мал.
 

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

Комментарии

Дополнительные сведения об использовании ZwQueryInformationTransactionManager см. в статье Использование потоков журналов с KTM.

NtQueryInformationTransactionManager и ZwQueryInformationTransactionManager — это две версии одной и той же подпрограммы системных служб Windows Native.

Для вызовов из драйверов режима ядра версии NtXxx и ZwXxx подпрограммы Собственные системные службы Windows могут вести себя по-разному, так как они обрабатывают и интерпретируют входные параметры. Дополнительные сведения о связи между версиями подпрограмм NtXxx и ZwXxx см. в разделе Использование версий NT и Zw подпрограмм собственных системных служб.

Требования

Требование Значение
Минимальная версия клиента Доступно в Windows Vista и более поздних версиях операционной системы.
Целевая платформа Универсальное
Верхняя часть wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
Правила соответствия DDI HwStorPortProhibitedDIs, PowerIrpDDis

См. также раздел

TRANSACTIONMANAGER_BASIC_INFORMATION

TRANSACTIONMANAGER_INFORMATION_CLASS

TRANSACTIONMANAGER_LOGPATH_INFORMATION

TRANSACTIONMANAGER_LOG_INFORMATION

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

ZwCreateTransactionManager

ZwOpenTransactionManager

ZwRecoverTransactionManager

ZwRollforwardTransactionManager