Fungsi NtOpenTransactionManager (wdm.h)

Rutinitas ZwOpenTransactionManager mendapatkan handel ke objek manajer transaksi yang ada.

Sintaks

__kernel_entry NTSYSCALLAPI NTSTATUS NtOpenTransactionManager(
  [out]          PHANDLE            TmHandle,
  [in]           ACCESS_MASK        DesiredAccess,
  [in, optional] POBJECT_ATTRIBUTES ObjectAttributes,
  [in, optional] PUNICODE_STRING    LogFileName,
  [in, optional] LPGUID             TmIdentity,
  [in, optional] ULONG              OpenOptions
);

Parameter

[out] TmHandle

Penunjuk ke variabel yang dialokasikan penelepon yang menerima handel ke objek manajer transaksi jika ZwOpenTransactionManager mengembalikan STATUS_SUCCESS.

[in] DesiredAccess

Nilai ACCESS_MASK yang menentukan akses yang diminta pemanggil ke objek manajer transaksi. Untuk informasi tentang cara menentukan parameter ini, lihat parameter DesiredAccess dari ZwCreateTransactionManager.

[in, optional] ObjectAttributes

Penunjuk ke struktur OBJECT_ATTRIBUTES yang menentukan nama objek dan atribut lainnya. Gunakan rutinitas InitializeObjectAttributes untuk menginisialisasi struktur ini. Jika pemanggil tidak berjalan dalam konteks utas sistem, pemanggil harus mengatur atribut OBJ_KERNEL_HANDLE saat memanggil InitializeObjectAttributes. Parameter ini bersifat opsional dan dapat berupa NULL.

[in, optional] LogFileName

Penunjuk ke struktur UNICODE_STRING yang berisi jalur dan nama file aliran file log yang dibuat saat objek manajer transaksi dibuat. Untuk informasi selengkapnya, lihat parameter LogFileName dari ZwCreateTransactionManager. Parameter ini bersifat opsional dan dapat berupa NULL.

[in, optional] TmIdentity

Pointer ke GUID yang mengidentifikasi objek manajer transaksi. Parameter ini bersifat opsional dan dapat berupa NULL.

[in, optional] OpenOptions

Parameter ini tidak digunakan dan harus nol.

Nilai kembali

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

Menampilkan kode Deskripsi
STATUS_INVALID_PARAMETER
Nilai parameter input tidak valid.
STATUS_INSUFFICIENT_RESOURCES
KTM tidak dapat mengalokasikan sumber daya sistem (biasanya memori).
STATUS_OBJECT_NAME_INVALID
Nama objek yang ditentukan parameter ObjectAttributes tidak valid.
STATUS_LOG_CORRUPTION_DETECTED
KTM mengalami kesalahan saat membuat atau membuka file log.
STATUS_ACCESS_DENIED
Nilai parameter DesiredAccess tidak valid.
 

Rutinitas mungkin mengembalikan nilai NTSTATUS lainnya.

Keterangan

Pemanggil dapat mengidentifikasi objek manajer transaksi mana yang akan dibuka dengan menggunakan salah satu dari tiga teknik berikut:

  • Gunakan parameter LogFileName untuk menentukan jalur dan nama file aliran file log yang dibuat saat objek manajer transaksi dibuat.
  • Gunakan parameter TmIdentity untuk menentukan GUID yang mengidentifikasi objek manajer transaksi.
  • Gunakan parameter ObjectAttributes untuk menyediakan struktur OBJECT_ATTRIBUTES yang berisi nama objek yang sebelumnya ditentukan pemanggil ke rutinitas ZwCreateTransactionManager .
Anda hanya harus menentukan salah satu parameter yang tercantum di atas (nama objek, nama file log, atau GUID) dan mengatur dua parameter lainnya ke NULL.

Komponen TPS Anda harus memanggil ZwRecoverTransactionManager setelah disebut ZwOpenTransactionManager.

Komponen TPS yang memanggil ZwOpenTransactionManager akhirnya harus memanggil ZwClose untuk menutup handel objek.

Untuk informasi selengkapnya tentang cara menggunakan ZwOpenTransactionManager, lihat Objek Manajer Transaksi dan Membuat Resource Manager.

NtOpenTransactionManager dan ZwOpenTransactionManager 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, Ntifs.h)
Pustaka NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
Aturan kepatuhan DDI HwStorPortProhibitedDDIs, PowerIrpDDis

Lihat juga

InitializeObjectAttributes

OBJECT_ATTRIBUTES

UNICODE_STRING

Menggunakan Versi Nt dan Zw dari Rutinitas Layanan Sistem Asli

ZwClose

ZwCreateTransactionManager

ZwQueryInformationTransactionManager