Fungsi FltTagFile (fltkernel.h)
FltTagFile menetapkan tag reparse pada file atau direktori.
Sintaks
NTSTATUS FLTAPI FltTagFile(
[in] PFLT_INSTANCE InitiatingInstance,
[in] PFILE_OBJECT FileObject,
[in] ULONG FileTag,
[in, optional] GUID *Guid,
[in] PVOID DataBuffer,
[in] USHORT DataBufferLength
);
Parameter
[in] InitiatingInstance
Penunjuk instans buram untuk instans driver minifilter yang memulai permintaan I/O ini. Parameter ini diperlukan dan tidak boleh NULL.
[in] FileObject
Arahkan ke objek file untuk file atau direktori tempat mengatur titik pemisahan ulang. Objek file harus dibuka untuk akses FILE_WRITE_DATA. Parameter ini diperlukan dan tidak boleh NULL.
[in] FileTag
Pilah ulang tag titik. Jika tag reparse yang ada sedang dimodifikasi, tag yang ditentukan dalam parameter ini harus cocok dengan tag titik reparse yang akan dimodifikasi.
[in, optional] Guid
GUID yang secara unik mengidentifikasi jenis titik pemisahan ulang. Jika FileTag bukan tag Microsoft, parameter ini diperlukan dan tidak boleh NULL. Jika tag reparse yang ada sedang dimodifikasi, GUID yang ditentukan dalam parameter ini harus cocok dengan GUID dari titik pemisahan ulang yang akan dimodifikasi.
[in] DataBuffer
Penunjuk ke buffer yang berisi data yang ditentukan pengguna untuk titik pemilah ulang.
[in] DataBufferLength
Ukuran, dalam byte, dari buffer yang dirujuk Oleh DataBuffer .
Nilai kembali
FltTagFile mengembalikan STATUS_SUCCESS atau nilai NTSTATUS yang sesuai seperti salah satu hal berikut ini:
Menampilkan kode | Deskripsi |
---|---|
|
FltTagFileEx mengalami kegagalan alokasi kumpulan. Ini adalah kode kesalahan. |
|
Sistem file tidak mendukung titik pemilah ulang. Ini adalah kode kesalahan. |
|
FileTag bukan tag Microsoft, dan NULL ditentukan untuk Guid. Ini adalah kode kesalahan. |
|
Tag reparse yang ditentukan oleh pemanggil tidak cocok dengan tag titik reparse yang akan dimodifikasi. Ini adalah kode kesalahan. |
|
GUID reparse yang ditentukan oleh pemanggil tidak cocok dengan GUID titik pemisahan ulang yang akan dimodifikasi. Ini adalah kode kesalahan. |
Keterangan
Driver minifilter harus menggunakan FltTagFile alih-alih FSCTL_SET_REPARSE_POINT untuk mengatur titik pemilah ulang.
Tidak semua sistem file mendukung titik pemilah ulang. Sistem file NTFS mendukungnya; sistem file FAT tidak. Driver minifilter dapat menentukan apakah sistem file mendukung titik pemisahan ulang dengan memanggil FltQueryVolumeInformation, menentukan FileFsAttributeInformation untuk parameter FsInformation , dan memeriksa bendera bit FILE_SUPPORTS_REPARSE_POINTS dalam struktur FILE_FS_ATTRIBUTE_INFORMATION yang dikembalikan.
Untuk menghapus titik pemisahan ulang yang ada, panggil FltUntagFile.
Untuk informasi selengkapnya tentang titik pemilah ulang, lihat dokumentasi Microsoft Windows SDK.
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Universal |
Header | fltkernel.h (termasuk Fltkernel.h) |
Pustaka | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | PASSIVE_LEVEL |