Fungsi VerFindFileA (winver.h)
Menentukan tempat untuk menginstal file berdasarkan apakah file menemukan versi lain dari file dalam sistem. Nilai yang dikembalikan VerFindFile dalam buffer yang ditentukan digunakan dalam panggilan berikutnya ke fungsi VerInstallFile .
Sintaks
DWORD VerFindFileA(
[in] DWORD uFlags,
[in] LPCSTR szFileName,
[in, optional] LPCSTR szWinDir,
[in] LPCSTR szAppDir,
[out] LPSTR szCurDir,
[in, out] PUINT puCurDirLen,
[out] LPSTR szDestDir,
[in, out] PUINT puDestDirLen
);
Parameter
[in] uFlags
Jenis: DWORD
Parameter ini bisa menjadi nilai berikut. Semua bit lainnya dicadangkan.
Nilai | Makna |
---|---|
|
File sumber dapat dibagikan oleh beberapa aplikasi. Aplikasi dapat menggunakan informasi ini untuk menentukan di mana file harus disalin. |
[in] szFileName
Jenis: LPCTSTR
Nama file yang akan diinstal. Sertakan hanya nama file dan ekstensi, bukan jalur.
[in, optional] szWinDir
Jenis: LPCTSTR
Direktori tempat Windows berjalan atau akan dijalankan. String ini dikembalikan oleh fungsi GetWindowsDirectory .
[in] szAppDir
Jenis: LPCTSTR
Direktori tempat program penginstalan menginstal sekumpulan file terkait. Jika program penginstalan menginstal aplikasi, ini adalah direktori tempat aplikasi akan berada. Parameter ini juga menunjuk ke direktori aplikasi saat ini kecuali ditentukan lain.
[out] szCurDir
Jenis: LPWSTR
Buffer yang menerima jalur ke versi file saat ini yang sedang diinstal. Jalur adalah string yang dihentikan nol. Jika versi saat ini tidak diinstal, buffer akan berisi string panjang nol. Buffer harus setidaknya _MAX_PATH karakter panjang, meskipun ini tidak diperlukan.
[in, out] puCurDirLen
Jenis: PUINT
Panjang buffer szCurDir . Penunjuk ini tidak boleh NULL.
Saat fungsi kembali, lpuCurDirLen berisi ukuran, dalam karakter, data yang dikembalikan dalam szCurDir, termasuk karakter null yang mengakhiri. Jika buffer terlalu kecil untuk berisi semua data, lpuCurDirLen akan menjadi ukuran buffer yang diperlukan untuk menahan jalur.
[out] szDestDir
Jenis: LPTSTR
Buffer yang menerima jalur ke lokasi penginstalan yang direkomendasikan oleh VerFindFile. Jalur adalah string yang dihentikan nol. Buffer harus setidaknya _MAX_PATH karakter panjang, meskipun ini tidak diperlukan.
[in, out] puDestDirLen
Jenis: PUINT
Penunjuk ke variabel yang menentukan panjang buffer szDestDir . Penunjuk ini tidak boleh NULL.
Saat fungsi kembali, lpuDestDirLen berisi ukuran, dalam karakter, data yang dikembalikan dalam szDestDir, termasuk karakter null yang mengakhiri. Jika buffer terlalu kecil untuk berisi semua data, lpuDestDirLen akan menjadi ukuran buffer yang diperlukan untuk menahan jalur.
Nilai kembali
Jenis: DWORD
Nilai yang dikembalikan adalah bitmask yang menunjukkan status file. Ini bisa berupa satu atau beberapa nilai berikut. Semua nilai lainnya dicadangkan.
Mengembalikan kode/nilai | Deskripsi |
---|---|
|
Versi file yang saat ini terinstal tidak berada di tujuan yang disarankan. |
|
Sistem menggunakan versi file yang saat ini diinstal; oleh karena itu, file tidak dapat ditimpa atau dihapus. |
|
Setidaknya salah satu buffer terlalu kecil untuk berisi string yang sesuai. Aplikasi harus memeriksa buffer output untuk menentukan buffer mana yang terlalu kecil. |
Keterangan
Fungsi ini berfungsi pada gambar file 16,32-, dan 64-bit.
VerFindFile mencari salinan file yang ditentukan dengan menggunakan fungsi OpenFile . Namun, ini menentukan direktori sistem dari direktori Windows yang ditentukan, atau mencari jalur.
Jika parameter dwFlags menunjukkan bahwa file bersifat privat untuk aplikasi ini (tidak VFFF_ISSHAREDFILE), VerFindFile merekomendasikan untuk menginstal file di direktori aplikasi. Jika tidak, jika sistem menjalankan salinan bersama sistem, fungsi merekomendasikan penginstalan file di direktori Windows. Jika sistem menjalankan salinan privat sistem, fungsi merekomendasikan penginstalan file di direktori sistem.
Catatan
Header winver.h mendefinisikan VerFindFile 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
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 2000 Professional [hanya aplikasi desktop] |
Server minimum yang didukung | Windows 2000 Server [hanya aplikasi desktop] |
Target Platform | Windows |
Header | winver.h (termasuk Windows.h) |
Pustaka | Version.lib |
DLL | Api-ms-win-core-version-l1-1-0.dll |
Lihat juga
Konseptual
Sumber Daya Lain
Referensi
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