Mendistribusikan ulang file Visual C++

Catatan

Apakah Anda di sini karena Anda mencari unduhan salah satu file Visual C++ Runtime? Buka halaman unduhan Visual C++ Redistributable terbaru yang didukung .

File dan lisensi yang dapat didistribusikan ulang

Distribusi paket Visual C++ Runtime Redistributable, modul penggabungan, dan biner individual terbatas pada pengguna Visual Studio berlisensi dan tunduk pada Persyaratan Lisensi Piranti Lunak Microsoft.

Saat menyebarkan aplikasi, Anda juga harus menyebarkan file yang diperlukan untuk mendukungnya. Jika Microsoft menyediakan salah satu file ini, periksa apakah Anda diizinkan untuk mendistribusikannya kembali. Anda dapat menemukan tautan ke ketentuan lisensi Visual Studio di IDE. Dalam dialog Tentang Microsoft Visual Studio, pilih tautan ketentuan lisensi . Anda juga dapat mengunduh Persyaratan Lisensi Piranti Lunak Microsoft dan lisensi yang relevan dari Visual Studio License Directory.

Untuk melihat "daftar REDIST" yang dirujuk di bagian "Kode yang Dapat Didistribusikan" dari Ketentuan Lisensi Perangkat Lunak Microsoft untuk Visual Studio 2022, lihat file kode yang dapat didistribusikan untuk Microsoft Visual Studio 2022.

Untuk melihat "daftar REDIST" yang dirujuk di bagian "Kode yang Dapat Didistribusikan" pada Persyaratan Lisensi Piranti Lunak Microsoft Visual Studio 2019, lihat file kode Distributable untuk Microsoft Visual Studio 2019.

Untuk melihat "daftar REDIST" yang dirujuk di bagian "Kode yang Dapat Didistribusikan" dari Ketentuan Lisensi Perangkat Lunak Microsoft Visual Studio 2017, lihat file kode yang dapat didistribusikan untuk Microsoft Visual Studio 2017.

Untuk melihat "daftar REDIST" yang disebutkan di bagian "Kode Dapat Didistribusikan" dari Persyaratan Lisensi Piranti Lunak Microsoft Visual Studio 2015, lihat file kode dapat didistribusikan untuk Microsoft Visual Studio 2015.

Untuk informasi selengkapnya tentang file yang dapat didistribusikan ulang, lihat Menentukan pustaka tautan dinamis (DLL) mana yang akan didistribusikan ulang dan Contoh penyebaran.

Temukan file yang dapat didistribusikan ulang

Untuk menyebarkan file yang dapat didistribusikan ulang, Anda dapat menggunakan paket yang dapat didistribusikan ulang yang diinstal oleh Visual Studio. Dalam versi Visual Studio sejak 2017, file-file ini diberi nama vc_redist.arm64.exe, vc_redist.x64.exe, dan vc_redist.x86.exe. Pada Visual Studio 2015, 2017, dan 2019, mereka juga tersedia dengan nama vcredist_x86.exe, vcredist_x64.exe, dan (hanya 2015) vcredist_arm.exe.

Cara term mudah untuk menemukan file yang dapat didistribusikan ulang adalah dengan menggunakan variabel lingkungan yang diatur dalam prompt perintah pengembang. Pada Visual Studio 2022, file yang dapat didistribusikan ulang berada di folder %VCINSTALLDIR%Redist\MSVC\v143. Dalam versi terbaru Visual Studio 2019, Anda dapat menemukan file yang dapat didistribusikan ulang di folder %VCINSTALLDIR%Redist\MSVC\v142. Dalam Visual Studio 2017 dan Visual Studio 2019, file juga ditemukan di %VCToolsRedistDir%. Pada Visual Studio 2015, Anda dapat menemukan file-file ini di %VCINSTALLDIR%redist\<locale>, di mana <locale> adalah lokal paket yang dapat didistribusikan ulang.

Pada Visual Studio 2022 dan 2019, file modul penggabungan adalah bagian dari komponen opsional yang dapat diinstal bernama Visual C++ <version> Modul penggabungan Redistributable di Penginstal Visual Studio. Modul penggabungan diinstal secara default sebagai bagian dari penginstalan C++ pada Visual Studio 2017 dan Visual Studio 2015. Saat diinstal pada Visual Studio 2022, Anda dapat menemukan modul penggabungan yang dapat didistribusikan ulang di %VCINSTALLDIR%Redist\MSVC\v143\MergeModules.

Dalam versi terbaru Visual Studio 2019, modul penggabungan yang dapat didistribusikan ulang ditemukan di %VCINSTALLDIR%Redist\MSVC\v142\MergeModules. Pada Visual Studio 2019 dan Visual Studio 2017, mereka juga ditemukan di %VCToolsRedistDir%MergeModules. Pada Visual Studio 2015, mereka ditemukan di Program Files [(x86)]\Common Files\Merge Modules.

Menginstal paket yang dapat didistribusikan ulang

Paket Visual C++ Redistributable menginstal dan mendaftarkan semua pustaka Visual C++. Jika Anda menggunakannya, jalankan sebagai prasyarat pada sistem target sebelum Anda menginstal aplikasi Anda. Kami menyarankan agar Anda menggunakan paket ini untuk penyebaran Anda karena mengaktifkan pembaruan otomatis pustaka Visual C++. Untuk contoh yang menunjukkan cara menggunakan paket ini, lihat Panduan: Menyebarkan aplikasi Visual C++ dengan menggunakan paket Visual C++ Redistributable.

Setiap paket Visual C++ Redistributable memeriksa keberadaan versi yang lebih baru pada komputer. Jika versi yang lebih baru ditemukan, paket tidak diinstal. Pada Visual Studio 2015 atau yang lebih baru, paket yang dapat didistribusikan ulang menampilkan pesan kesalahan yang menyatakan bahwa penyiapan gagal. Jika paket menggunakan /quiet bendera untuk dijalankan, tidak ada pesan kesalahan yang muncul. Dalam kedua kasus, alat penginstal Microsoft mencatat kesalahan, dan hasil kesalahan dikembalikan ke pemanggil.

Di Visual Studio 2015 dan yang lebih baru, Anda dapat menghindari kesalahan ini dengan memeriksa registri untuk mengetahui apakah versi yang lebih baru diinstal. Nomor versi yang diinstal saat ini disimpan di kunci HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\14.0\VC\Runtimes\{x86|x64|arm64}.

Nomor versi adalah 14.0 untuk Visual Studio 2015, 2017, 2019, dan 2022 karena Redistributable terbaru tersebut secara biner kompatibel dengan versi sebelumnya sejak 2015. Kuncinya adalah arm64, x86, atau x64 tergantung pada versi yang diinstal vcredist untuk platform. (Anda perlu memeriksa di bawah Wow6432Node subkey hanya jika Anda menggunakan Regedit untuk melihat versi paket x86 yang diinstal pada platform x64.)

Nomor versi disimpan dalam REG_SZ nilai string Version dan juga dalam kumpulan nilai Major, Minor, Bld, dan RbldREG_DWORD. Untuk menghindari kesalahan pada waktu penginstalan, Anda harus melewati penginstalan paket yang dapat didistribusikan ulang jika versi yang saat ini diinstal lebih baru.

Opsi baris perintah untuk paket yang dapat didistribusikan ulang

Visual C++ Redistributable mendukung beberapa opsi baris perintah. Opsi /?, /h, atau /help menampilkan dialog yang mencantumkan opsi yang tersedia. Anda dapat menentukan /install untuk menginstal, /repair memperbaiki, atau /uninstall menghapus instalasi Redistributable. Opsi /layout menyalin konten lengkap Redistributable di direktori saat ini.

Secara default, Redistributable menginstal kontennya dan meminta informasi kepada pengguna dan apakah akan memulai ulang setelah penginstalan. Anda dapat mengubah perilaku ini dengan opsi berikut:

  • /passive: menunjukkan bilah kemajuan saat Redistributable diinstal dan tidak memerlukan interaksi pengguna lainnya.
  • /quiet: tidak menampilkan antarmuka pengguna atau memerlukan interaksi pengguna apa pun. Gunakan /quiet untuk penginstalan yang sepenuhnya otomatis.
  • /norestart: menekan setiap upaya untuk memulai ulang. Secara default, file log dibuat di %TEMP%.
  • /log filename.txt untuk masuk ke file tertentu.

Jika Anda tidak menjalankan dari prompt perintah yang ditingkatkan, Anda harus merespons perintah Kontrol Akun Pengguna untuk memungkinkan penginstal berjalan dengan hak istimewa administratif.

Contoh perintah ini menginstal x64 Redistributable. Ini menunjukkan kemajuan penginstalan tetapi tidak memerlukan interaksi pengguna selain menghidupkan ulang:

vc_redist.x64.exe /install /passive /norestart

Menginstal modul penggabungan yang dapat didistribusikan ulang

Penting

Modul penggabungan (.msm file) untuk file Visual C++ Redistributable tidak digunakan lagi. Kami tidak menyarankan Anda menggunakannya untuk penyebaran aplikasi. Sebagai gantinya, kami merekomendasikan penyebaran pusat paket Visual C++ Redistributable. Penyebaran pusat oleh paket yang dapat didistribusikan ulang memungkinkan Microsoft untuk melayani file pustaka runtime secara independen. Penghapusan instalasi aplikasi Anda tidak dapat memengaruhi aplikasi lain yang juga menggunakan penyebaran pusat.

Saat Anda menggunakan paket yang dapat didistribusikan ulang untuk penyebaran pusat, Anda tidak bertanggung jawab untuk melacak dan memelihara pustaka runtime. Jika tidak, pembaruan ke file pustaka runtime mengharuskan Anda memperbarui dan menyebarkan ulang alat penginstal Anda .msi . Aplikasi Anda mungkin rentan terhadap bug atau masalah keamanan hingga Anda melakukannya.

Modul penggabungan yang dapat didistribusikan ulang harus disertakan dalam paket penginstal Windows (atau paket penginstalan serupa) yang Anda gunakan untuk menyebarkan aplikasi Anda. Untuk informasi selengkapnya, lihat Mendistribusikan ulang dengan menggunakan modul penggabungan. Misalnya, lihat Panduan: Menyebarkan aplikasi Visual C++ dengan menggunakan proyek penyiapan.

Menginstal file yang dapat didistribusikan ulang individual

Dimungkinkan juga untuk langsung menginstal DLL Redistributable di folder lokal aplikasi. Folder lokal aplikasi adalah folder yang berisi file aplikasi yang dapat dieksekusi. Untuk alasan layanan, kami tidak menyarankan Anda menggunakan lokasi penginstalan ini.

Potensi kesalahan saat runtime

Jika Windows tidak dapat menemukan salah satu DLL Redistributable yang diperlukan oleh aplikasi Anda, mungkin menampilkan pesan yang mirip dengan yang satu ini: "Aplikasi ini gagal dimulai karena library.dll tidak ditemukan. Menginstal ulang aplikasi dapat memperbaiki masalah ini."

Untuk mengatasi kesalahan semacam ini, pastikan alat penginstal aplikasi Anda dibuat dengan benar. Verifikasi bahwa pustaka yang dapat didistribusikan ulang disebarkan dengan benar pada sistem target. Untuk informasi selengkapnya, lihat Memahami dependensi aplikasi Visual C++.