Fungsi NtQueryInformationTransaction (wdm.h)

Rutinitas ZwQueryInformationTransaction mengambil informasi tentang transaksi tertentu.

Sintaks

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

Parameter

[in] TransactionHandle

Handel ke objek transaksi yang diperoleh oleh panggilan sebelumnya ke ZwCreateTransaction atau ZwOpenTransaction. Handel harus memiliki akses TRANSACTION_QUERY_INFORMATION ke objek .

[in] TransactionInformationClass

Nilai jenis TRANSACTION_INFORMATION_CLASS yang menentukan informasi yang akan diperoleh. Nilai harus menjadi salah satu nilai berikut:

  • TransactionBasicInformation
  • TransactionPropertiesInformation
  • TransactionEnlistmentInformation
Nilai TransactionFullInformation tidak digunakan dengan ZwQueryInformationTransaction.

[out] TransactionInformation

Penunjuk ke buffer yang dialokasikan pemanggil yang menerima informasi yang ditentukan parameter TransactionInformationClass . Jenis struktur buffer harus TRANSACTION_BASIC_INFORMATION, TRANSACTION_PROPERTIES_INFORMATION, atau TRANSACTION_ENLISTMENTS_INFORMATION.

[in] TransactionInformationLength

Panjangnya, dalam byte, dari buffer yang dialokasikan parameter TransactionInformation , termasuk panjang elemen array tambahan yang telah dialokasikan pemanggil untuk menerima informasi.

[out, optional] ReturnLength

Penunjuk ke variabel yang dialokasikan pemanggil yang menerima panjang, dalam byte, dari informasi yang ditulis KTM ke buffer TransactionInformation . Parameter ini bersifat opsional dan dapat berupa NULL.

Nilai kembali

ZwQueryInformationTransaction mengembalikan STATUS_SUCCESS jika operasi berhasil. Jika tidak, rutinitas ini mungkin mengembalikan salah satu nilai berikut:

Menampilkan kode Deskripsi
STATUS_INVALID_INFO_CLASS
Nilai parameter TransactionInformationClass tidak valid.
STATUS_INFO_LENGTH_MISMATCH
Panjang buffer yang ditentukan oleh parameter TransactionInformationLength salah.
STATUS_OBJECT_TYPE_MISMATCH
Handel yang ditentukan parameter TransactionHandle bukan handel untuk objek transaksi.
STATUS_INVALID_HANDLE
Handel objek tidak valid.
STATUS_ACCESS_DENIED
Pemanggil tidak memiliki akses yang sesuai ke objek transaksi.
STATUS_BUFFER_OVERFLOW
Buffer yang ditentukan parameter TransactionInformation terlalu kecil.
 

Rutinitas mungkin mengembalikan nilai NTSTATUS lainnya.

Keterangan

Untuk informasi selengkapnya tentang cara menggunakan ZwQueryInformationTransaction, lihat Membuat Klien Transaksional.

NtQueryInformationTransaction dan ZwQueryInformationTransaction adalah dua versi dari rutinitas Windows Native System Services yang sama.

Untuk panggilan dari driver mode kernel, versi NtXxx dan ZwXxx dari rutinItas Windows Native System Services dapat berperilaku berbeda dalam cara mereka menangani dan menginterpretasikan parameter input. Untuk informasi selengkapnya tentang hubungan antara versi NtXxx dan ZwXxx dari rutinitas, lihat Menggunakan Versi Nt dan Zw dari Rutinitas Layanan Sistem Asli.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia di Windows Vista dan versi sistem operasi yang lebih baru.
Target Platform Universal
Header wdm.h (termasuk Wdm.h, Ntddk.h, Ntifs.h)
Pustaka NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
Aturan kepatuhan DDI HwStorPortProhibitedDDIs, PowerIrpDDis

Lihat juga

TRANSACTION_BASIC_INFORMATION

TRANSACTION_ENLISTMENTS_INFORMATION

TRANSACTION_INFORMATION_CLASS

TRANSACTION_PROPERTIES_INFORMATION

TmGetTransactionId

Menggunakan Versi Nt dan Zw dari Rutinitas Layanan Sistem Asli

ZwCreateTransaction

ZwOpenTransaction

ZwSetInformationTransaction