Fungsi CopyFile2 (winbase.h)
Menyalin file yang ada ke file baru, memberi tahu aplikasi kemajuannya melalui fungsi panggilan balik.
Sintaks
HRESULT CopyFile2(
[in] PCWSTR pwszExistingFileName,
[in] PCWSTR pwszNewFileName,
[in, optional] COPYFILE2_EXTENDED_PARAMETERS *pExtendedParameters
);
Parameter
[in] pwszExistingFileName
Nama file yang ada.
Untuk memperpanjang batas ini menjadi 32.767 karakter lebar, tambahkan "\?" ke jalur. Untuk informasi selengkapnya, lihat Menamai File, Jalur, dan Namespace.
HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND)
.
[in] pwszNewFileName
Nama file baru.
Untuk memperpanjang batas ini menjadi 32.767 karakter lebar, tambahkan "\?" ke jalur. Untuk informasi selengkapnya, lihat Menamai File, Jalur, dan Namespace.
[in, optional] pExtendedParameters
Alamat opsional struktur COPYFILE2_EXTENDED_PARAMETERS .
Nilai kembali
Jika fungsi berhasil, nilai yang dikembalikan akan mengembalikan TRUE saat diteruskan ke makro BERHASIL .
Menampilkan kode | Deskripsi |
---|---|
|
Operasi salin berhasil diselesaikan. |
|
Operasi salin dijeda oleh pengembalian COPYFILE2_PROGRESS_PAUSE dari fungsi panggilan balik CopyFile2ProgressRoutine . |
|
Operasi salin dijeda oleh pengembalian COPYFILE2_PROGRESS_CANCEL atau COPYFILE2_PROGRESS_STOP dari fungsi panggilan balik CopyFile2ProgressRoutine . |
|
Anggota dwCopyFlags dari struktur COPYFILE2_EXTENDED_PARAMETERS melewati parameter pExtendedParameters berisi bendera COPY_FILE_FAIL_IF_EXISTS dan nama yang bertentangan ada. |
|
Anggota dwCopyFlags dari struktur COPYFILE2_EXTENDED_PARAMETERS melewati parameter pExtendedParameters berisi bendera COPY_FILE_FAIL_IF_EXISTS dan nama yang bertentangan ada. |
Keterangan
Fungsi ini mempertahankan atribut yang diperluas, penyimpanan terstruktur OLE, aliran data alternatif sistem file NTFS, dan atribut file. Atribut keamanan untuk file yang ada tidak disalin ke file baru. Untuk menyalin atribut keamanan, gunakan fungsi SHFileOperation .
Fungsi ini gagal dengan HRESULT_FROM_WIN32(ERROR_ACCESS_DENIED)
jika file tujuan sudah ada dan memiliki set atribut FILE_ATTRIBUTE_HIDDEN atau FILE_ATTRIBUTE_READONLY .
Untuk mengkompilasi aplikasi yang menggunakan fungsi ini, tentukan makro _WIN32_WINNT sebagai _WIN32_WINNT_WIN8 atau yang lebih baru. Untuk informasi selengkapnya, lihat Menggunakan Header Windows.
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 |
Dimulai dengan Windows 10, versi 1903 dan Windows Server 2022, nilai baru, COPY_FILE_REQUEST_COMPRESSED_TRAFFIC, didukung untuk bidang dwCopyFlags dari struktur COPYFILE2_EXTENDED_PARAMETERS yang diteruskan dalam argumen pExtendedParameters ke fungsi ini. Nilai baru ini meminta agar saluran transfer yang mendasar memadatkan data selama operasi salin. Permintaan mungkin tidak didukung untuk semua media, dalam hal ini diabaikan. Atribut dan parameter kompresi (kompleksitas komputasi, penggunaan memori) tidak dapat dikonfigurasi melalui API ini, dan dapat berubah di antara rilis OS yang berbeda. Pada Windows 10, bendera didukung untuk file yang berada di berbagi SMB, di mana versi protokol SMB yang dinegosiasikan adalah SMB v3.1.1 atau lebih besar.
Persyaratan
Klien minimum yang didukung | Windows 8 [aplikasi desktop | Aplikasi UWP] |
Server minimum yang didukung | Windows Server 2012 [aplikasi desktop | Aplikasi UWP] |
Target Platform | Windows |
Header | winbase.h (termasuk Windows.h) |
Pustaka | Kernel32.lib |
DLL | Kernel32.dll |