Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Struktur SP_FILE_COPY_PARAMS menjelaskan satu operasi penyalinan file.
Sintaksis
typedef struct _SP_FILE_COPY_PARAMS_A {
DWORD cbSize;
HSPFILEQ QueueHandle;
PCSTR SourceRootPath;
PCSTR SourcePath;
PCSTR SourceFilename;
PCSTR SourceDescription;
PCSTR SourceTagfile;
PCSTR TargetDirectory;
PCSTR TargetFilename;
DWORD CopyStyle;
HINF LayoutInf;
PCSTR SecurityDescriptor;
} SP_FILE_COPY_PARAMS_A, *PSP_FILE_COPY_PARAMS_A;
Anggota
cbSize
Ukuran struktur, dalam byte. Atur ke nilai: sizeof(SP_FILE_COPY_PARAMS).
QueueHandle
Tangani ke antrean file penyetelan, seperti yang dikembalikan oleh SetupOpenFileQueue.
SourceRootPath
Penunjuk opsional ke akar sumber untuk salinan ini, seperti A:.
SourcePath
Penunjuk opsional ke jalur relatif terhadap SourceRootPath tempat file dapat ditemukan.
SourceFilename
Bagian nama file dari file yang akan disalin.
SourceDescription
Penunjuk opsional ke deskripsi media sumber yang akan digunakan selama perintah disk.
SourceTagfile
Penunjuk opsional ke file tag yang kehadirannya di SourceRootPath menunjukkan keberadaan media sumber. Jika tidak ditentukan, file itu sendiri akan digunakan sebagai file tag jika diperlukan.
TargetDirectory
Direktori tempat file akan disalin.
TargetFilename
Penunjuk opsional ke nama file target. Jika tidak ditentukan, file target akan memiliki nama yang sama dengan file sumber.
CopyStyle
Bendera yang mengontrol perilaku operasi penyalinan file. Bendera ini mungkin merupakan kombinasi dari nilai berikut.
| Nilai | Arti |
|---|---|
|
Hapus file sumber setelah salinan berhasil. Pemanggil tidak diberi tahu jika penghapusan gagal. |
|
Salin file hanya jika melakukannya akan menimpa file di jalur tujuan. Pemanggil tidak diberi tahu. |
|
Periksa setiap file yang sedang disalin untuk melihat apakah sumber daya versinya menunjukkan bahwa file tersebut adalah versi yang sama atau tidak lebih baru dari salinan yang ada pada target.
Informasi versi file yang digunakan selama pemeriksaan versi adalah yang ditentukan dalam dwFileVersionMS dan dwFileVersionLS anggota struktur VS_FIXEDFILEINFO, seperti yang diisi oleh fungsi versi. Jika salah satu file tidak memiliki sumber daya versi, atau jika memiliki informasi versi yang identik, file sumber dianggap lebih baru. Jika file sumber tidak sama dalam versi atau yang lebih baru, dan CopyMsgHandler ditentukan, pemanggil akan diberi tahu dan dapat membatalkan salinan. Jika CopyMsgHandler tidak ditentukan, file tidak disalin. |
|
Periksa setiap file yang sedang disalin untuk melihat apakah sumber daya versinya menunjukkan bahwa file tersebut tidak lebih baru dari salinan yang ada pada target. Jika file sumber lebih baru tetapi tidak sama dalam versi dengan target yang ada, file akan disalin. |
|
Periksa apakah file target ada, dan jika demikian, beri tahu pemanggil yang mungkin mem-veto salinan. Jika copyMsgHandler tidak ditentukan, file tidak akan ditimpa. |
|
Jangan dekompresi file. Ketika bendera ini diatur, file target tidak diberi bentuk nama sumber yang tidak dikompresi (jika sesuai). Misalnya, menyalin f:\x86\cmd.ex_ ke \\install\temp menghasilkan file target \\install\temp\cmd.ex_. Jika bendera SP_COPY_NODECOMP tidak ditentukan, file akan didekompresi dan target akan dipanggil \\install\temp\cmd.exe. Bagian nama file dari DestinationName, jika ditentukan, dilucuti dan diganti dengan nama file file sumber. Ketika SP_COPY_NODECOMP ditentukan, tidak ada informasi bahasa atau versi yang dapat diperiksa. |
|
Periksa setiap file yang disalin untuk melihat apakah bahasanya berbeda dari bahasa file yang ada yang sudah ada pada target. Jika demikian, dan CopyMsgHandler ditentukan, pemanggil akan diberi tahu dan dapat membatalkan salinan. Jika CopyMsgHandler tidak ditentukan, file tidak disalin. |
|
SourceFile adalah jalur sumber lengkap. Jangan mencarinya di bagian SourceDisksNames dari file INF. |
|
SourcePathRoot adalah bagian jalur lengkap dari file sumber. Abaikan sumber relatif yang ditentukan di bagian SourceDisksNames dari file INF untuk media sumber tempat file berada. Bendera ini diabaikan jika SP_COPY_SOURCE_ABSOLUTE ditentukan. |
|
Jika target ada, berulah seolah-olah sedang digunakan dan antrekan file untuk disalin pada boot ulang sistem berikutnya. |
|
Jika file sedang digunakan selama operasi salin, beri tahu pengguna bahwa sistem perlu di-boot ulang. |
|
Jangan beri pengguna opsi untuk melewati file. |
|
Periksa apakah file target ada, dan jika demikian, file tidak ditimpa. Pemanggil tidak diberi tahu. |
|
Periksa setiap file yang sedang disalin untuk melihat apakah sumber daya versinya (atau stempel waktu untuk file non-gambar) menunjukkan bahwa file tersebut tidak lebih baru dari salinan yang ada pada target. Jika file yang disalin bukan yang lebih baru, file tidak disalin. Pemanggil tidak diberi tahu. |
|
Jika pengguna mencoba melewati file, peringatkan mereka bahwa melompati file dapat memengaruhi penginstalan. (Digunakan untuk file penting sistem.) |
LayoutInf
Tangani ke INF untuk digunakan untuk mendapatkan informasi sumber.
SecurityDescriptor
String Deskriptor Keamanan opsional yang menentukan ACL untuk diterapkan ke file.
Komentar
Nota
Header setupapi.h mendefinisikan SP_FILE_COPY_PARAMS sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta preprosektor 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
| Syarat | Nilai |
|---|---|
| klien minimum yang didukung | Windows XP [hanya aplikasi desktop] |
| server minimum yang didukung |
Windows Server 2003 [hanya aplikasi desktop] |
| Header |
setupapi.h |
Lihat juga
Gambaran Umum
Struktur