Bagikan melalui


Fungsi FltDeleteTransactionContext (fltkernel.h)

Rutinitas FltDeleteTransactionContext menghapus konteks dari transaksi tertentu dan menandai konteks untuk penghapusan.

Sintaks

NTSTATUS FLTAPI FltDeleteTransactionContext(
  [in]            PFLT_INSTANCE Instance,
  [in]            PKTRANSACTION Transaction,
  [out, optional] PFLT_CONTEXT  *OldContext
);

Parameter

[in] Instance

Penunjuk instans buram untuk pemanggil.

[in] Transaction

Pointer transaksi buram untuk transaksi yang konteksnya sedang dihapus.

[out, optional] OldContext

Penunjuk ke variabel yang dialokasikan penelepon yang menerima alamat konteks yang dihapus. Parameter ini bersifat opsional dan dapat berupa NULL. Jika OldContext bukan NULL dan tidak menunjuk ke NULL_CONTEXT, pemanggil bertanggung jawab untuk memanggil FltReleaseContext untuk merilis konteks ini ketika tidak lagi diperlukan.

Nilai kembali

FltDeleteTransactionContext mengembalikan STATUS_SUCCESS atau nilai NTSTATUS yang sesuai seperti berikut ini:

Menampilkan kode Deskripsi
STATUS_FLT_DELETING_OBJECT Instans yang ditentukan sedang ditumbangkan. Ini adalah kode kesalahan.
STATUS_NOT_FOUND Tidak ditemukan konteks yang cocok. Ini adalah kode kesalahan.

Keterangan

Untuk informasi selengkapnya tentang konteks, lihat Tentang konteks minifilter.

Karena konteks dihitung referensi, biasanya tidak perlu bagi driver minifilter untuk memanggil rutinitas seperti FltDeleteTransactionContext untuk secara eksplisit menghapus konteks.

Driver minifilter memanggil FltDeleteTransactionContext untuk menghapus konteks dari transaksi dan menandai konteks untuk penghapusan. Konteks biasanya segera dibebaskan kecuali ada referensi luar biasa di dalamnya (misalnya, karena konteksnya masih digunakan oleh utas lain).

Untuk mengalokasikan konteks baru, panggil FltAllocateContext.

Untuk mengambil konteks transaksi, panggil FltGetTransactionContext.

Untuk mengatur konteks transaksi, panggil FltSetTransactionContext.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista dan yang lebih baru
Target Platform Universal
Header fltkernel.h (termasuk Fltkernel.h)
Pustaka FltMgr.lib
IRQL <= APC_LEVEL

Lihat juga

FltAllocateContext

FltDeleteContext

FltCommitComplete

FltEnlistInTransaction

FltGetTransactionContext

FltPreprepareComplete

FltPrepareComplete

FltReleaseContext

FltRollbackComplete

FltRollbackEnlistment

FltSetTransactionContext