Fungsi SetEndOfFile (fileapi.h)
Mengatur ukuran file fisik untuk file yang ditentukan ke posisi penunjuk file saat ini.
Ukuran file fisik juga disebut sebagai akhir file. Fungsi SetEndOfFile dapat digunakan untuk memotong atau memperluas file. Untuk mengatur akhir logis file, gunakan fungsi SetFileValidData .
Sintaks
BOOL SetEndOfFile(
[in] HANDLE hFile
);
Parameter
[in] hFile
Handel ke file yang akan diperluas atau dipotok.
Handel file harus dibuat dengan hak akses GENERIC_WRITE . Untuk informasi selengkapnya, lihat Keamanan File dan Hak Akses.
Mengembalikan nilai
Jika fungsi berhasil, nilai yang dikembalikan bukan nol.
Jika fungsi gagal, nilai yang dikembalikan adalah nol (0). Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError.
Keterangan
Fungsi SetEndOfFile dapat digunakan untuk memotong atau memperluas file. Jika file diperluas, konten file antara akhir lama file dan akhir baru file tidak ditentukan.
Setiap aliran file memiliki hal berikut:
- Ukuran file: ukuran data dalam file, ke byte.
- Ukuran alokasi: ukuran ruang yang dialokasikan untuk file pada disk, yang selalu merupakan kelipatan bahkan dari ukuran kluster.
- Panjang data yang valid: panjang data dalam file yang benar-benar ditulis, ke byte. Nilai ini selalu kurang dari atau sama dengan ukuran file.
Jika
CreateFileMapping dipanggil untuk membuat objek pemetaan file untuk hFile, UnmapViewOfFile harus dipanggil terlebih dahulu untuk membatalkan peta semua tampilan dan memanggil CloseHandle untuk menutup objek pemetaan file sebelum Anda dapat memanggil SetEndOfFile.
Operasi yang Ditransaksikan
Jika ada transaksi yang terikat pada handel, maka perubahan posisi akhir file ditransaksikan.Di Windows 8 dan Windows Server 2012, fungsi ini didukung oleh teknologi berikut.
Teknologi | Didukung |
---|---|
Protokol Server Message Block (SMB) 3.0 | Ya |
SMB 3.0 Transparent Failover (TFO) | Ya |
SMB 3.0 dengan Scale-out File Shares (SO) | Ya |
Sistem File Volume Bersama Kluster (CsvFS) | Ya |
Sistem File Tangguh (ReFS) | Ya |
Persyaratan
Klien minimum yang didukung | Windows XP [aplikasi desktop | Aplikasi UWP] |
Server minimum yang didukung | Windows Server 2003 [aplikasi desktop | Aplikasi UWP] |
Target Platform | Windows |
Header | fileapi.h (sertakan Windows.h) |
Pustaka | Kernel32.lib |
DLL | Kernel32.dll |