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

先前呼叫 ZwCreateTransactionManagerZwOpenTransactionManager 取得的交易管理員物件的句柄。 句柄必須具有物件的TRANSACTIONMANAGER_QUERY_INFORMATION存取權。

[in] TransactionManagerInformationClass

TRANSACTIONMANAGER_INFORMATION_CLASS型別列舉值,指定要取得的資訊。 此值必須是下列其中一項:

  • TransactionManagerBasicInformation
  • TransactionManagerLogInformation
  • TransactionManagerLogPathInformation
列舉的 TransactionManagerOnlineProbeInformation 值不會與 ZwQueryInformationTransactionManager 搭配使用。

[out] TransactionManagerInformation

呼叫端配置的緩衝區指標,可接收 TransactionManagerInformationClass 參數所指定的資訊。 緩衝區的結構類型必須是 TRANSACTIONMANAGER_BASIC_INFORMATIONTRANSACTIONMANAGER_LOG_INFORMATIONTRANSACTIONMANAGER_LOGPATH_INFORMATIONTRANSACTIONMANAGER_RECOVERY_INFORMATION

[in] TransactionManagerInformationLength

TransactionManagerInformation 參數指向之緩衝區的長度,以位元組為單位,包括呼叫端配置接收資訊之任何其他數位元素的長度。

[out, optional] ReturnLength

呼叫端配置的變數指標,可接收 KTM 寫入 TransactionManagerInformation 緩衝區之資訊的長度,以位元組為單位。 此參數是選擇性的,可以是 NULL

傳回值

如果作業成功,ZwQueryInformationTransactionManager 會傳回STATUS_SUCCESS。 否則,此例程可能會傳回下列其中一個值:

傳回碼 Description
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 使用記錄數據流

NtQueryInformationTransactionManagerZwQueryInformationTransactionManager 是相同 Windows 原生系統服務例程的兩個版本。

對於核心模式驅動程式的呼叫,Windows 原生系統服務例程的 NtXxxZwXxx 版本在處理和解譯輸入參數的方式可能會有不同的行為。 如需例程 NtXxxZwXxx 版本之間的關聯性詳細資訊,請參閱 使用 Nt 和 Zw 版本的原生系統服務例程

規格需求

需求
最低支援的用戶端 適用於 Windows Vista 和更新版本的作業系統版本。
目標平台 Universal
標頭 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