Efek Tautan Simbolis pada Fungsi Sistem File
Beberapa fungsi file standar yang menggunakan nama jalur untuk menentukan satu atau beberapa file dipengaruhi oleh penggunaan tautan simbolis. Topik ini mencantumkan fungsi tersebut dan menjelaskan perubahan perilaku:
- CopyFile dan CopyFileTransacted
- CopyFileEx
- CreateFile dan CreateFileTransacted
- CreateHardLink dan CreateHardLinkTransacted
- DeleteFile dan DeleteFileTransacted
- FindFirstChangeNotification
- FindFirstFile dan FindFirstFileTransacted
- FindFirstFileEx
- FindNextFile
- GetBinaryType
- GetCompressedFileSize dan GetCompressedFileSizeTransacted
- GetDiskFreeSpace
- GetDiskFreeSpaceEx
- GetFileAttributes
- GetFileAttributesEx
- GetFileSecurity
- GetTempPath
- GetVolumeInformation
- SetFileAttributes
- SetFileSecurity
- Topik terkait
Dalam deskripsi di bawah ini, istilah berikut digunakan:
- File sumber—File asli yang akan disalin.
- File tujuan—Salinan file yang baru dibuat.
- Target—Entitas yang diacu oleh tautan simbolis.
Catatan
Perilaku fungsi yang menerima handel yang dibuat menggunakan fungsi CreateFile , seperti fungsi GetFileTime , akan berbeda berdasarkan apakah fungsi CreateFile dipanggil menggunakan bendera FILE_FLAG_OPEN_REPARSE_POINT atau tidak. Untuk informasi selengkapnya, lihat CreateFile dan bagian CreateFile dan CreateFileTransacted berikut ini.
CopyFile dan CopyFileTransacted
Jika file sumber adalah tautan simbolis, file aktual yang disalin adalah target tautan simbolis.
Jika file tujuan sudah ada dan merupakan tautan simbolis, target tautan simbolis ditimpa oleh file sumber.
CopyFileEx
Jika COPY_FILE_COPY_SYMLINK ditentukan dan:
- Jika file sumber adalah tautan simbolis, tautan simbolis disalin, bukan file target.
- Jika file sumber bukan tautan simbolis, tidak ada perubahan perilaku.
- Jika file tujuan adalah tautan simbolis yang ada, tautan simbolis ditimpa, bukan file target.
- Jika COPY_FILE_FAIL_IF_EXISTS juga ditentukan, dan file tujuan adalah tautan simbolis yang ada, operasi gagal dalam semua kasus.
Jika COPY_FILE_COPY_SYMLINK tidak ditentukan dan:
- Jika COPY_FILE_FAIL_IF_EXISTS juga ditentukan, dan file tujuan adalah tautan simbolis yang ada, operasi hanya gagal jika target tautan simbolis ada.
- Jika COPY_FILE_FAIL_IF_EXISTS tidak ditentukan, tidak ada perubahan perilaku.
Windows Server 2003 dan Windows XP: Bendera COPY_FILE_COPY_SYMLINK tidak didukung. Jika file sumber adalah tautan simbolis, file aktual yang disalin adalah target tautan simbolis.
CreateFile dan CreateFileTransacted
Jika panggilan ke fungsi ini membuat file baru, tidak ada perubahan perilaku.
Jika FILE_FLAG_OPEN_REPARSE_POINT ditentukan dan:
- Jika file yang ada dibuka dan merupakan tautan simbolis, handel yang dikembalikan adalah handel ke tautan simbolis.
- Jika CREATE_ALWAYS, TRUNCATE_EXISTING, atau FILE_FLAG_DELETE_ON_CLOSE ditentukan, file yang terpengaruh adalah tautan simbolis.
Jika FILE_FLAG_OPEN_REPARSE_POINT tidak ditentukan dan:
- Jika file yang ada dibuka dan merupakan tautan simbolis, handel yang dikembalikan adalah handel ke target.
- Jika CREATE_ALWAYS, TRUNCATE_EXISTING, atau FILE_FLAG_DELETE_ON_CLOSE ditentukan, file yang terpengaruh adalah target.
CreateHardLink dan CreateHardLinkTransacted
Jika jalur menunjuk ke tautan simbolis, fungsi membuat tautan keras ke target.
DeleteFile dan DeleteFileTransacted
Jika jalur menunjuk ke tautan simbolis, tautan simbolis dihapus, bukan target. Untuk menghapus target, Anda harus memanggil CreateFile dan menentukan FILE_FLAG_DELETE_ON_CLOSE.
FindFirstChangeNotification
Jika jalur menunjuk ke tautan simbolis, handel pemberitahuan dibuat untuk target. Jika aplikasi telah mendaftar untuk menerima pemberitahuan perubahan untuk direktori yang berisi tautan simbolis, aplikasi hanya diberi tahu ketika tautan simbolis telah diubah, bukan file target.
FindFirstFile dan FindFirstFileTransacted
Jika jalur menunjuk ke tautan simbolis, buffer WIN32_FIND_DATA berisi informasi tentang tautan simbolis, bukan target.
FindFirstFileEx
Jika jalur menunjuk ke tautan simbolis, buffer WIN32_FIND_DATA berisi informasi tentang tautan simbolis, bukan target.
FindNextFile
Jika jalur menunjuk ke tautan simbolis, buffer WIN32_FIND_DATA berisi informasi tentang tautan simbolis, bukan target.
GetBinaryType
Jika jalur menunjuk ke tautan simbolis, file target akan digunakan.
GetCompressedFileSize dan GetCompressedFileSizeTransacted
Jika jalur menunjuk ke tautan simbolis, fungsi mengembalikan ukuran file target.
GetDiskFreeSpace
Jika jalur menunjuk ke tautan simbolis, operasi dilakukan pada target.
GetDiskFreeSpaceEx
Jika jalur menunjuk ke tautan simbolis, operasi dilakukan pada target.
GetFileAttributes
Jika jalur menunjuk ke tautan simbolis, fungsi mengembalikan atribut untuk tautan simbolis.
GetFileAttributesEx
Jika jalur menunjuk ke tautan simbolis, fungsi mengembalikan atribut untuk tautan simbolis.
GetFileSecurity
Jika jalur menunjuk ke tautan simbolis, fungsi mengembalikan atribut untuk tautan simbolis.
GetTempPath
Jika jalur menunjuk ke tautan simbolis, nama jalur sementara mempertahankan tautan simbolis apa pun.
GetVolumeInformation
Jika jalur menunjuk ke tautan simbolis, fungsi mengembalikan informasi volume untuk target.
SetFileAttributes
Jika jalur menunjuk ke tautan simbolis, fungsi mengambil atribut untuk tautan simbolis.
SetFileSecurity
Jika jalur menunjuk ke tautan simbolis, fungsi mengembalikan atribut untuk tautan simbolis.
Topik terkait
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