Fungsi CreateDirectoryA (fileapi.h)
Membuat direktori baru. Jika sistem file yang mendasar mendukung keamanan pada file dan direktori, fungsi menerapkan deskriptor keamanan tertentu ke direktori baru.
Untuk menentukan direktori templat, gunakan fungsi CreateDirectoryEx .
Untuk melakukan operasi ini sebagai operasi yang ditransaksikan, gunakan fungsi CreateDirectoryTransacted .
Sintaks
BOOL CreateDirectoryA(
[in] LPCSTR lpPathName,
[in, optional] LPSECURITY_ATTRIBUTES lpSecurityAttributes
);
Parameter
[in] lpPathName
Jalur direktori yang akan dibuat.
Secara default, nama 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 ikut serta untuk menghapus batasan MAX_PATH tanpa menambahkan awalan "\\?\". Lihat bagian "Batasan Panjang Jalur Maksimum" dari Penamaan File, Jalur, dan Namespace untuk detailnya.
[in, optional] lpSecurityAttributes
Penunjuk ke struktur SECURITY_ATTRIBUTES . Anggota lpSecurityDescriptor dari struktur menentukan pendeskripsi keamanan untuk direktori baru. Jika lpSecurityAttributes adalah NULL, direktori akan mendapatkan pendeskripsi keamanan default. ACL dalam deskriptor keamanan default untuk direktori diwarisi dari direktori induknya.
Sistem file target harus mendukung keamanan pada file dan direktori agar parameter ini berpengaruh. (Ini ditunjukkan ketika GetVolumeInformation mengembalikan FS_PERSISTENT_ACLS.)
Mengembalikan nilai
Jika fungsi berhasil, nilai yang dikembalikan bukan nol.
Jika fungsi gagal, nilai yang dikembalikan adalah nol. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError. Kemungkinan kesalahan termasuk yang berikut ini.
Menampilkan kode | Deskripsi |
---|---|
|
Direktori yang ditentukan sudah ada. |
|
Satu atau beberapa direktori perantara tidak ada; fungsi ini hanya akan membuat direktori akhir di jalur. |
Keterangan
Beberapa sistem file, seperti sistem file NTFS, mendukung kompresi atau enkripsi untuk file dan direktori individual. Pada volume yang diformat untuk sistem file tersebut, direktori baru mewarisi atribut kompresi dan enkripsi direktori induknya.
Aplikasi dapat memperoleh handel ke direktori dengan memanggil CreateFile dengan set bendera FILE_FLAG_BACKUP_SEMANTICS . Untuk contoh kode, lihat CreateFile.
Untuk mendukung fungsi pewarisan yang mengkueri pendeskripsi keamanan objek ini dapat secara heuristik menentukan dan melaporkan bahwa pewarisan berlaku. Lihat Penyebaran Otomatis ACE yang Dapat Diwariskan untuk informasi selengkapnya.
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 |
Contoh
Misalnya, lihat Mengambil dan Mengubah Atribut File.
Catatan
Header fileapi.h mendefinisikan CreateDirectory sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor 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
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk