Fungsi RemoveDirectoryA (fileapi.h)
Menghapus direktori kosong yang ada.
Untuk melakukan operasi ini sebagai operasi yang ditransaksikan, gunakan fungsi RemoveDirectoryTransacted .
Sintaks
BOOL RemoveDirectoryA(
[in] LPCSTR lpPathName
);
Parameter
[in] lpPathName
Jalur direktori yang akan dihapus. Jalur ini harus menentukan direktori kosong, dan proses panggilan harus memiliki akses penghapusan ke direktori.
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 memilih untuk menghapus batasan MAX_PATH tanpa menambahkan sebelumnya "\\?\". Lihat bagian "Batasan Panjang Jalur Maksimum" di Penamaan File, Jalur, dan Namespace untuk detailnya.
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.
Keterangan
Fungsi RemoveDirectory menandai direktori untuk dihapus saat ditutup. Oleh karena itu, direktori tidak dihapus sampai handel terakhir ke direktori ditutup.
Untuk menghapus file secara rekursif dalam direktori, gunakan fungsi SHFileOperation .
RemoveDirectory dapat digunakan untuk menghapus persimpangan direktori. Karena direktori target dan kontennya akan tetap dapat diakses melalui jalur kanonisnya, direktori target itu sendiri tidak terpengaruh dengan menghapus persimpangan yang menargetkannya. Untuk alasan ini, ketika lpPathName mengacu pada persimpangan direktori, RemoveDirectory akan menghapus tautan yang ditentukan terlepas dari apakah direktori target kosong atau tidak. Untuk informasi selengkapnya tentang persimpangan, lihat Hard Link dan Persimpangan.
Penggunaan penghapusan POSIX menyebabkan direktori dihapus saat handel tetap terbuka. Panggilan berikutnya ke CreateDirectory untuk membuka direktori gagal dengan ERROR_FILE_NOT_FOUND.
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 |
Catatan
Header fileapi.h mendefinisikan RemoveDirectory 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
Persyaratan | Nilai |
---|---|
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