Bagikan melalui


Fungsi FltDeleteFileContext (fltkernel.h)

Rutinitas FltDeleteFileContext mengambil dan menghapus konteks file yang telah ditetapkan driver minifilter tertentu untuk file tertentu.

Sintaks

NTSTATUS FLTAPI FltDeleteFileContext(
  [in]  PFLT_INSTANCE Instance,
  [in]  PFILE_OBJECT  FileObject,
  [out] PFLT_CONTEXT  *OldContext
);

Parameter

[in] Instance

Penunjuk instans buram untuk pemanggil. Parameter ini diperlukan dan tidak boleh NULL.

[in] FileObject

Penunjuk objek file untuk file. Parameter ini diperlukan dan tidak boleh NULL.

[out] OldContext

Penunjuk ke variabel yang dialokasikan penelepon yang menerima alamat konteks yang dihapus. Jika tidak ada konteks yang cocok yang ditemukan, variabel ini akan menerima NULL_CONTEXT. Parameter ini bersifat opsional dan dapat berupa NULL. Untuk informasi selengkapnya tentang parameter ini, lihat bagian Keterangan berikut ini.

Nilai kembali

FltDeleteFileContext mengembalikan STATUS_SUCCESS atau nilai NTSTATUS yang sesuai, seperti salah satu dari berikut ini:

Menampilkan kode Deskripsi
STATUS_NOT_FOUND Tidak ditemukan konteks yang cocok. Ini adalah kode kesalahan.
STATUS_NOT_SUPPORTED Konteks file tidak didukung untuk file ini. Ini adalah kode kesalahan.

Keterangan

Untuk informasi selengkapnya tentang konteks, lihat Tentang konteks minifilter.

Karena konteks dihitung referensi, biasanya tidak perlu driver minifilter untuk memanggil rutinitas seperti FltDeleteFileContext atau FltDeleteContext untuk secara eksplisit menghapus konteks.

Driver minifilter memanggil FltDeleteFileContext untuk mengambil dan menghapus konteks file yang sebelumnya diatur untuk file dengan memanggil FltSetFileContext.

Jika parameter OldContextadalah NULL pada input dan konteks file yang cocok ditemukan, FltDeleteFileContext merilis referensi yang ditambahkan oleh panggilan driver minifilter sebelumnya ke FltSetFileContext. Konteks yang dihapus biasanya segera dibebaskan kecuali ada referensi luar biasa di dalamnya (misalnya, karena konteks masih digunakan oleh utas lain).

Jika parameter OldContext bukan NULL dan konteks file yang cocok ditemukan dan dikembalikan, pemanggil bertanggung jawab untuk merilis referensi yang ditambahkan oleh FltSetFileContext. Untuk merilis referensi ini, driver minifilter harus memanggil FltReleaseContext pada konteks file yang dihapus sesegera mungkin setelah melakukan pembersihan yang diperlukan.

Untuk mengalokasikan konteks baru, panggil FltAllocateContext.

Untuk menentukan apakah konteks file didukung untuk file tertentu, panggil FltSupportsFileContexts atau FltSupportsFileContextsEx.

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

FLT_CONTEXT_REGISTRATION

FltAllocateContext

FltDeleteContext

FltGetFileContext

FltReleaseContext

FltSetFileContext

FltSupportsFileContexts

FltSupportsFileContextsEx