Bagikan melalui


Fungsi FltDeleteInstanceContext (fltkernel.h)

FltDeleteInstanceContext menghapus konteks dari instans tertentu dan menandai konteks penghapusan.

Sintaks

NTSTATUS FLTAPI FltDeleteInstanceContext(
  [in]  PFLT_INSTANCE Instance,
  [out] PFLT_CONTEXT  *OldContext
);

Parameter

[in] Instance

Penunjuk instans buram untuk instans.

[out] OldContext

Penunjuk ke variabel yang dialokasikan pemanggil 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

FltDeleteInstanceContext mengembalikan STATUS_SUCCESS atau nilai NTSTATUS yang sesuai seperti salah satu hal berikut ini:

Menampilkan kode Deskripsi
STATUS_FLT_DELETING_OBJECT Instans yang ditentukan sedang dikoyak. 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 FltDeleteInstanceContext untuk secara eksplisit menghapus konteks.

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

Untuk mengalokasikan konteks baru, panggil FltAllocateContext.

Untuk mendapatkan konteks instans, panggil FltGetInstanceContext.

Untuk mengatur konteks instans, panggil FltSetInstanceContext.

Persyaratan

Persyaratan Nilai
Target Platform Universal
Header fltkernel.h (termasuk Fltkernel.h)
Pustaka FltMgr.lib
IRQL <= APC_LEVEL

Lihat juga

FltAllocateContext

FltDeleteContext

FltGetInstanceContext

FltReleaseContext

FltSetInstanceContext