Fungsi GetFileAttributesA (fileapi.h)

Mengambil atribut sistem file untuk file atau direktori tertentu.

Untuk mendapatkan informasi atribut lainnya, gunakan fungsi GetFileAttributesEx .

Untuk melakukan operasi ini sebagai operasi yang ditransaksikan, gunakan fungsi GetFileAttributesTransacted .

Sintaks

DWORD GetFileAttributesA(
  [in] LPCSTR lpFileName
);

Parameter

[in] lpFileName

Nama file atau direktori.

Secara default, namanya terbatas pada MAX_PATH karakter. Untuk memperpanjang batas ini menjadi 32.767 karakter lebar, tambahkan "\\?\" ke jalur. Untuk informasi selengkapnya, lihat Menamai File, Jalur, dan Namespace.

Tip

Dimulai dengan Windows 10, Versi 1607, Anda dapat memilih untuk menghapus batasan MAX_PATH tanpa menambahkan sebelumnya "\\?\". Lihat bagian "Batasan Panjang Jalur Maksimum" di Penamaan File, Jalur, dan Namespace untuk detailnya.

Nilai kembali

Jika fungsi berhasil, nilai yang dikembalikan berisi atribut file atau direktori yang ditentukan. Untuk daftar nilai atribut dan deskripsinya, lihat Konstanta Atribut File.

Jika fungsi gagal, nilai yang dikembalikan INVALID_FILE_ATTRIBUTES. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError.

Keterangan

Ketika GetFileAttributes dipanggil pada direktori yang merupakan folder yang dipasang, ia mengembalikan atribut sistem file direktori, bukan direktori akar dalam volume yang terkait dengan folder yang dipasang dengan direktori. Untuk mendapatkan atribut file dari volume terkait, panggil GetVolumeNameForVolumeMountPoint untuk mendapatkan nama volume terkait. Kemudian gunakan nama yang dihasilkan dalam panggilan ke GetFileAttributes. Hasilnya adalah atribut direktori akar pada volume terkait.

Jika Anda memanggil GetFileAttributes untuk berbagi jaringan, fungsi gagal, dan GetLastError mengembalikan ERROR_BAD_NETPATH. Anda harus menentukan jalur ke subfolder pada berbagi tersebut.

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 Berbagi File Peluasan Skala (SO) Ya
Sistem File Volume Bersama Kluster (CsvFS) Ya
Sistem File Tangguh (ReFS) Ya
 

Perilaku tautan simbolis—Jika jalur menunjuk ke tautan simbolis, fungsi mengembalikan atribut untuk tautan simbolis.

Operasi Yang Ditransaksikan

Jika file terbuka untuk modifikasi dalam transaksi, tidak ada utas lain yang dapat membuka file untuk modifikasi sampai transaksi dilakukan. Jadi, jika utas yang ditransaksikan membuka file terlebih dahulu, utas berikutnya yang mencoba memodifikasi file sebelum transaksi dilakukan menerima pelanggaran berbagi. Jika utas yang tidak ditransaksikan memodifikasi file sebelum utas yang ditransaksikan, dan file masih terbuka ketika transaksi mencoba membukanya, transaksi menerima kesalahan ERROR_TRANSACTIONAL_CONFLICT.

Contoh

Misalnya, lihat Mengambil dan Mengubah Atribut File.

Catatan

Header fileapi.h mendefinisikan GetFileAttributes sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta praprosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

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

Lihat juga

DeviceIoControl

Konstanta Atribut File

Fungsi Manajemen File

FindFirstFile

FindNextFile

GetFileAttributesEx

GetFileAttributesTransacted

SetFileAttributes

Tautan Simbolis