Fungsi FsRtlGetFileSize (ntifs.h)

Rutinitas FsRtlGetFileSize digunakan untuk mendapatkan ukuran file.

Sintaks

NTSTATUS FsRtlGetFileSize(
  [in]  PFILE_OBJECT   FileObject,
  [out] PLARGE_INTEGER FileSize
);

Parameter

[in] FileObject

Penunjuk ke objek file untuk dikueri.

[out] FileSize

Penunjuk ke bilangan bulat besar yang menerima ukuran file pada output.

Nilai kembali

FsRtlGetFileSize mengembalikan STATUS_SUCCESS atau status kesalahan yang sesuai yang mewakili status penyelesaian akhir operasi. Kemungkinan kode status kesalahan meliputi yang berikut ini:

Menampilkan kode Deskripsi
STATUS_INSUFFICIENT_RESOURCES
Memori yang diperlukan untuk digunakan oleh fungsi ini tidak dapat dialokasikan.
STATUS_FILE_IS_A_DIRECTORY
FileObject yang ditentukan mengacu pada direktori.

Keterangan

Rutinitas FsRtlGetFileSize digunakan untuk mengambil ukuran file untuk file. Tidak seperti ZwQueryInformationFile, FsRtlGetFileSize tidak memperoleh kunci objek file pada objek file sinkron. Jika Anda sudah memiliki sumber daya sistem file, Anda harus memanggil FsRtlGetFileSize alih-alih ZwQueryInformationFile, karena mencoba memperoleh kunci objek file akan melanggar urutan penguncian dan menyebabkan kebuntuan. Fungsi ZwQueryInformationFile harus hanya jika Anda belum memiliki sumber daya sistem file.

FsRtlGetFileSize akan menggunakan I/O cepat jika didukung atau kueri berbasis IRP reguler untuk mengekstrak ukuran file.

Persyaratan

Persyaratan Nilai
Target Platform Universal
Header ntifs.h (termasuk Ntifs.h)
Pustaka NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
Aturan kepatuhan DDI HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm)

Lihat juga

FltQueryInformationFile

ZwQueryInformationFile