Fungsi VerInstallFileA (winver.h)
Menginstal file yang ditentukan berdasarkan informasi yang dikembalikan dari fungsi VerFindFile
Sintaksis
DWORD VerInstallFileA(
[in] DWORD uFlags,
[in] LPCSTR szSrcFileName,
[in] LPCSTR szDestFileName,
[in] LPCSTR szSrcDir,
[in] LPCSTR szDestDir,
[in] LPCSTR szCurDir,
[out] LPSTR szTmpFile,
[in, out] PUINT puTmpFileLen
);
Parameter
[in] uFlags
Jenis: DWORD
Parameter ini bisa menjadi salah satu nilai berikut. Semua bit lainnya dicadangkan.
[in] szSrcFileName
Jenis:
Nama file yang akan diinstal. Ini adalah nama file dalam direktori yang diarahkan oleh parameter szSrcDir
[in] szDestFileName
Jenis:
Nama VerInstallFile akan memberikan file baru setelah penginstalan. Nama file ini mungkin berbeda dari nama file di direktori szSrcFileName
[in] szSrcDir
Jenis:
Nama direktori tempat file dapat ditemukan.
[in] szDestDir
Jenis:
Nama direktori tempat file harus diinstal.
[in] szCurDir
Jenis:
Nama direktori tempat versi file ini yang sudah ada sebelumnya dapat ditemukan.
[out] szTmpFile
Jenis:
Nama salinan sementara file sumber. Buffer harus setidaknya _MAX_PATH karakter panjang, meskipun ini tidak diperlukan, dan harus kosong pada input.
[in, out] puTmpFileLen
Jenis: PUINT
Panjang buffer szTmpFile
Saat fungsi kembali,
Mengembalikan nilai
Jenis: DWORD
Nilai yang dikembalikan adalah bitmask yang menunjukkan pengecualian. Ini bisa menjadi satu atau beberapa nilai berikut. Semua nilai lainnya dicadangkan.
Mengembalikan kode/nilai | Deskripsi |
---|---|
|
Operasi baca, buat, hapus, atau ganti nama gagal karena pelanggaran akses. |
|
Buffer szTmpFile |
|
Fungsi tidak dapat membuat file sementara. Kesalahan spesifik dapat dijelaskan oleh bendera lain. |
|
Fungsi tidak dapat menghapus file tujuan, atau tidak dapat menghapus versi file yang ada yang terletak di direktori lain. Jika bit VIF_TEMPFILE diatur, penginstalan gagal, dan file tujuan mungkin tidak dapat dihapus. |
|
Versi file yang ada tidak dapat dihapus dan VIFF_DONTDELETEOLD tidak ditentukan. |
|
Fungsi tidak dapat memuat file kabinet. |
|
Fungsi tidak dapat memuat file terkompresi. |
|
Fungsi tidak dapat membaca file tujuan (yang sudah ada). Ini mencegah fungsi memeriksa atribut file. |
|
Fungsi tidak dapat membaca file sumber. Ini bisa berarti bahwa jalur tidak ditentukan dengan benar. |
|
Fungsi tidak dapat mengganti nama file sementara, tetapi sudah menghapus file tujuan. |
|
File baru memerlukan halaman kode yang tidak dapat ditampilkan oleh versi sistem yang saat ini berjalan. Kesalahan ini dapat ditimpa dengan memanggil |
|
File baru dan yang sudah ada sebelumnya memiliki nilai bahasa atau halaman kode yang berbeda. Kesalahan ini dapat ditimpa dengan memanggil |
|
File baru memiliki jenis, subjenis, atau sistem operasi yang berbeda dari file yang sudah ada sebelumnya. Kesalahan ini dapat ditimpa dengan memanggil |
|
File yang sudah ada sebelumnya sedang digunakan oleh sistem dan tidak dapat dihapus. |
|
File baru dan yang sudah ada sebelumnya berbeda dalam satu atau beberapa atribut. Kesalahan ini dapat ditimpa dengan memanggil |
|
Fungsi tidak dapat menyelesaikan operasi yang diminta karena memori yang tidak mencukup. Umumnya, ini berarti aplikasi kehabisan memori yang mencoba memperluas file terkompresi. |
|
Fungsi tidak dapat membuat file sementara karena ruang disk pada drive tujuan tidak cukup. |
|
Operasi baca, buat, hapus, atau ganti nama gagal karena pelanggaran berbagi. |
|
File yang akan diinstal lebih lama dari file yang sudah ada sebelumnya. Kesalahan ini dapat ditimpa dengan memanggil |
|
Salinan sementara file baru ada di direktori tujuan. Penyebab kegagalan tercermin dalam bendera lain. |
|
File yang sudah ada sebelumnya dilindungi terhadap penulisan. Kesalahan ini dapat ditimpa dengan memanggil |
Komentar
Fungsi ini berfungsi pada gambar file 16-, 32-, dan 64-bit.
VerInstallFile menyalin file dari direktori sumber ke direktori tujuan. Jika szCurDir menunjukkan bahwa versi file sebelumnya ada di sistem, VerInstallFile membandingkan informasi stempel versi file. Jika versi file yang diinstal sebelumnya lebih baru daripada versi baru, atau jika atribut file secara signifikan berbeda, misalnya, jika mereka berada dalam bahasa yang berbeda, maka VerInstallFile kembali dengan satu atau beberapa kode kesalahan yang dapat dipulihkan.
VerInstallFile meninggalkan file sementara di direktori tujuan. Aplikasi dapat mengambil alih kesalahan atau menghapus file sementara. Jika aplikasi mengambil alih kesalahan, VerInstallFile menghapus versi yang diinstal sebelumnya dan mengganti nama file sementara dengan nama file asli.
Nota
Header winver.h mendefinisikan VerInstallFile sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta praprosesor 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 2000 Professional [hanya aplikasi desktop] |
server minimum yang didukung |
Windows 2000 Server [hanya aplikasi desktop] |
Platform Target |
Windows |
Header |
winver.h (termasuk Windows.h) |
Pustaka |
Version.lib |
DLL |
Api-ms-win-core-version-l1-1-0.dll |
Lihat juga
Konseptual
Referensi
VerFindFile
Informasi Versi