Fungsi FltGetVolumeProperties (fltkernel.h)
Rutinitas FltGetVolumeProperties mengembalikan informasi properti volume untuk volume yang diberikan.
Sintaks
NTSTATUS FLTAPI FltGetVolumeProperties(
[in] PFLT_VOLUME Volume,
[out] PFLT_VOLUME_PROPERTIES VolumeProperties,
ULONG VolumePropertiesLength,
[out] PULONG LengthReturned
);
Parameter
[in] Volume
Penunjuk buram untuk volume. Parameter ini diperlukan dan tidak boleh NULL.
[out] VolumeProperties
Penunjuk ke buffer yang dialokasikan penelepon yang menerima informasi properti volume yang diminta. Jika Panjang adalah nol pada input, parameter ini diabaikan. Jika tidak, parameter ini diperlukan dan tidak boleh NULL.
VolumePropertiesLength
Ukuran, dalam byte, dari buffer yang diacu oleh parameter VolumeProperties . Parameter ini bersifat opsional dan bisa nol. Jika nol, LengthReturned menerima ukuran, dalam byte, dari buffer yang diperlukan untuk menahan properti volume. Jika parameter ini bukan nol, setidaknya harus nilai sizeof(FLT_VOLUME_PROPERTIES).
[out] LengthReturned
Penunjuk ke variabel yang dialokasikan penelepon yang menerima ukuran, dalam byte, dari informasi yang dikembalikan dalam VolumeProperties. Jika FltGetVolumeProperties mengembalikan STATUS_BUFFER_TOO_SMALL, atau jika Panjang nol pada input, parameter ini menerima ukuran, dalam byte, dari buffer yang diperlukan untuk menahan properti volume. Parameter ini diperlukan dan tidak boleh NULL.
Nilai kembali
FltGetVolumeProperties mengembalikan STATUS_SUCCESS atau nilai NTSTATUS yang sesuai seperti salah satu dari berikut ini:
Menampilkan kode | Deskripsi |
---|---|
|
Buffer yang ditunjuk parameter VolumeProperties cukup besar untuk menahan bagian tetap dari struktur FLT_VOLUME_PROPERTIES tetapi bukan anggota FileSystemDriverName, FileSystemDeviceName, atau RealDeviceName . Dalam hal ini, hanya bagian tetap dari informasi volume yang dikembalikan dalam buffer yang diarahkan oleh parameter VolumeProperties . Parameter LengthReturned menerima panjang aktual, dalam byte, data yang dikembalikan. Ini adalah kode peringatan. |
|
Buffer yang ditunjuk parameter VolumeProperties tidak cukup besar untuk menyimpan informasi properti volume. Parameter LengthReturned menerima ukuran buffer yang diperlukan. Dalam hal ini, tidak ada informasi volume yang dikembalikan. Ini adalah kode kesalahan. |
Keterangan
FltGetVolumeProperties hanya mengembalikan informasi yang dapat dikueri dengan aman selama proses pemasangan tanpa risiko kebuntuan sistem. Oleh karena itu, driver minifilter biasanya memanggil rutinitas ini dari fungsi panggilan balik pasca-pemasangan atau rutinitas InstanceSetupCallback (PFLT_INSTANCE_SETUP_CALLBACK) untuk menentukan apakah akan melampirkan ke volume tertentu.
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Universal |
Header | fltkernel.h (termasuk Fltkernel.h) |
Pustaka | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | <= APC_LEVEL |