Visual C++ Dosyalarını Yeniden Dağıtma

Dekont

Visual C++ Çalışma Zamanı dosyalarından birinin indirilmesini aradığınız için mi buradasınız? Desteklenen en son Visual C++ Yeniden Dağıtılabilir indirmeler sayfasına gidin.

Yeniden dağıtılabilir dosyalar ve lisanslama

Bir uygulamayı dağıtırken, onu desteklemek için gerekli tüm dosyaları da dağıtmalısınız. Bu dosyalardan herhangi biri Microsoft tarafından sağlanıyorsa bunları yeniden dağıtma izniniz olup olmadığını denetleyin. IDE'de Visual Studio lisans koşullarının bağlantısını bulabilirsiniz. Microsoft Visual Studio Hakkında iletişim kutusundaki Lisans koşulları bağlantısını kullanın. Alternatif olarak, Visual Studio Lisans Dizini'nden ilgili EULA'ları ve lisansları da indirebilirsiniz.

Visual Studio 2022 Microsoft Yazılım Lisans Koşulları'nın "Dağıtılabilir Kod" bölümünde başvuruda bulunan "DAĞITIM listesini" görüntülemek için bkz . Microsoft Visual Studio 2022 için dağıtılabilir kod dosyaları

Visual Studio 2019 Microsoft Yazılım Lisans Koşulları'nın "Dağıtılabilir Kod" bölümünde başvuruda bulunan "DAĞITIM LISTESI"ni görüntülemek için bkz . Microsoft Visual Studio 2019 için Dağıtılabilir Kod Dosyaları

Visual Studio 2017 Microsoft Yazılım Lisans Koşulları'nın "Dağıtılabilir Kod" bölümünde başvuruda bulunan "REDIST listesini" görüntülemek için bkz . Microsoft Visual Studio 2017 için Dağıtılabilir Kod Dosyaları.

Visual Studio 2015 Microsoft Yazılım Lisans Koşulları'nın "Dağıtılabilir Kod" bölümünde başvuruda bulunan "REDIST listesini" görüntülemek için bkz . Microsoft Visual Studio 2015 için Dağıtılabilir Kod Dosyaları.

Yeniden dağıtılabilir dosyalar hakkında daha fazla bilgi için bkz . Hangi DLL'lerin yeniden dağıtılacağını belirleme ve Dağıtım örnekleri.

Yeniden dağıtılabilir dosyaları bulma

Yeniden dağıtılabilir dosyaları dağıtmak için Visual Studio tarafından yüklenen yeniden dağıtılabilir paketleri kullanabilirsiniz. 2017'den bu yana Visual Studio sürümlerinde, bu dosyalar , vc_redist.x64.exeve vc_redist.x86.exeolarak adlandırılırvc_redist.arm64.exe. Visual Studio 2015, 2017 ve 2019'da , ve (yalnızca 2015) vcredist_arm.exeadlarında vcredist_x86.exevcredist_x64.exeda kullanılabilir.

Yeniden dağıtılabilir dosyaları bulmanın en kolay yolu, geliştirici komut isteminde ayarlanan ortam değişkenlerini kullanmaktır. Visual Studio 2022'de %VCINSTALLDIR%Redist\MSVC\v143 yeniden dağıtılabilir dosyalar klasördedir. Visual Studio 2019'un en son sürümünde, yeniden dağıtılabilir dosyaları %VCINSTALLDIR%Redist\MSVC\v142 klasörde bulabilirsiniz. Hem Visual Studio 2017 hem de Visual Studio 2019'da da bulunurlar %VCToolsRedistDir%. Visual Studio 2015'te, bu dosyalar içinde %VCINSTALLDIR%redist\<locale>bulunabilir; burada <locale> yeniden dağıtılabilir paketlerin yerel ayarıdır.

Visual Studio 2022 ve 2019'da birleştirme modülü dosyaları, Visual Studio Yükleyicisi C++ <sürümü> Yeniden Dağıtılabilir MSM'ler adlı isteğe bağlı yüklenebilir bir bileşenin parçasıdır. Birleştirme modülleri, Visual Studio 2017 ve Visual Studio 2015'te C++ yüklemesinin bir parçası olarak varsayılan olarak yüklenir. Visual Studio 2022'ye yüklendiğinde, içinde yeniden dağıtılabilir birleştirme modüllerini %VCINSTALLDIR%Redist\MSVC\v143\MergeModulesbulacaksınız. Visual Studio 2019'un en son sürümünde, yeniden dağıtılabilir birleştirme modülleri içindedir %VCINSTALLDIR%Redist\MSVC\v142\MergeModules. Hem Visual Studio 2019 hem de Visual Studio 2017'de, bunlar içinde %VCToolsRedistDir%MergeModulesde bulunur. Visual Studio 2015'te bunlar içinde Program Files [(x86)]\Common Files\Merge Modulesbulunur.

Yeniden dağıtılabilir paketleri yükleme

Visual C++ Yeniden Dağıtılabilir Paketleri tüm Visual C++ kitaplıklarını yükler ve kaydeder. Kullanıyorsanız, uygulamanızı yüklemeden önce bunu hedef sistemde önkoşul olarak çalıştırın. Visual C++ kitaplıklarının otomatik güncelleştirilmesini sağladıklarından, dağıtımlarınız için bu paketleri kullanmanızı öneririz. Bu paketlerin nasıl kullanılacağı hakkında bir örnek için bkz. İzlenecek Yol: Visual C++ Yeniden Dağıtılabilir Paketini Kullanarak Visual C++ Uygulaması Dağıtma.

Her Visual C++ Yeniden Dağıtılabilir paketi, makinede daha yeni bir sürümün varlığını denetler. Daha yeni bir sürüm bulunursa paket yüklenmez. Visual Studio 2015 veya sonraki sürümlerinde, Yeniden Dağıtılabilir paketler kurulumun başarısız olduğunu belirten bir hata iletisi görüntüler. Bir paket bayrağı kullanılarak /quiet çalıştırılırsa hiçbir hata iletisi görüntülenmez. Her iki durumda da, Microsoft yükleyicisi tarafından bir hata kaydedilir ve arayana bir hata sonucu döndürülür. Visual Studio 2015 ve sonraki sürümlerde, daha yeni bir sürümün yüklü olup olmadığını öğrenmek için kayıt defterini denetleyerek bu hatayı önleyebilirsiniz. Yüklü geçerli sürüm numarası anahtarda HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\14.0\VC\Runtimes\{x86|x64|arm64} depolanır. Sürüm numarası Visual Studio 2015, 2017, 2019 ve 2022 için 14.0'dır çünkü en son Redistributable, 2015'e kadar önceki sürümlerle uyumlu ikilidir. Anahtar , arm64x86veya x64 platformun yüklü vcredist sürümlerine bağlıdır. (Alt anahtarın Wow6432Node altında yalnızca yüklü x86 paketinin sürümünü bir x64 platformunda görüntülemek için Regedit kullanıyorsanız denetlemeniz gerekir.) Sürüm numarası, dize değerinde Version ve ayrıca , Minor, BldveREG_DWORDRblddeğerleri kümesinde MajordepolanırREG_SZ. Yükleme zamanında hata oluşmasını önlemek için, şu anda yüklü olan sürüm daha yeniyse Yeniden Dağıtılabilir paketinin yüklenmesini atlamalısınız.

Yeniden Dağıtılabilir paketler için komut satırı seçenekleri

Visual C++ Yeniden Dağıtılabilir çeşitli komut satırı seçeneklerini destekler. /?, /hveya /help seçenekleri, kullanılabilir seçeneklerin listelendiği bir açılır iletişim kutusu görüntüler. Yeniden Dağıtılabilir'i yüklemeyi, /repair onarmayı veya /uninstall kaldırmayı belirtebilirsiniz/install. seçeneği, /layout geçerli dizindeki Yeniden Dağıtılabilir öğesinin tüm içeriğini kopyalar. Varsayılan olarak, Redistributable içeriğini yükler ve kullanıcıdan bilgi ister ve yüklemeden sonra yeniden başlatılıp başlatılmayacağını sorar. İlerleme durumunu /passive görüntüleyen ancak aksi takdirde kullanıcı etkileşimi gerektirmeyen seçeneği belirtebilirsiniz. Kullanıcı arabirimi görüntülemeyen veya kullanıcı etkileşimi gerektirmeyen bir /quiet seçenek de belirtebilirsiniz. seçeneği /norestart , yeniden başlatma girişimlerini engeller. Varsayılan olarak, içinde %TEMP%bir günlük dosyası oluşturulur. Belirli bir dosyada oturum açmak için kullanabilirsiniz /log filename.txt .

Bu örnek komut x64 Redistributable'ı yükler. Yükleme ilerleme durumunu gösterir, ancak kullanıcı etkileşimi veya yeniden başlatma gerektirmez:

vc_redist.x64.exe /install /passive /norestart

Yeniden dağıtılabilir birleştirme modüllerini yükleme

Önemli

Visual C++ Yeniden Dağıtılabilir dosyaları için birleştirme modülleri (.msmdosyalar) kullanım dışıdır. Bunları uygulama dağıtımı için kullanmanızı önermiyoruz. Bunun yerine, Visual C++ Yeniden Dağıtılabilir paketinin merkezi dağıtımını öneririz. Yeniden dağıtılabilir bir paket tarafından merkezi dağıtım, Microsoft'un çalışma zamanı kitaplık dosyalarına bağımsız olarak hizmet vermesini mümkün kılar. Ayrıca, uygulamanızın kaldırılması merkezi dağıtımı da kullanan diğer uygulamaları etkilemez. Merkezi dağıtım için yeniden dağıtılabilir bir paket kullandığınızda, çalışma zamanı kitaplıklarını izlemek ve korumak sizin sorumluluğunuzda değildir. Aksi takdirde, çalışma zamanı kitaplığı dosyalarına yönelik bir güncelleştirme yükleyicinizi güncelleştirmenizi ve yeniden dağıtmanızı .msi gerektirir. Uygulamanız, siz bunu yapıncaya kadar hatalara veya güvenlik sorunlarına karşı savunmasız olabilir.

Yeniden dağıtılabilir birleştirme modülleri, uygulamanızı dağıtmak için kullandığınız Windows Installer paketine (veya benzer yükleme paketine) eklenmelidir. Daha fazla bilgi için bkz . Birleştirme modüllerini kullanarak yeniden dağıtma. Örnek için bkz . İzlenecek Yol: Kurulum projesi kullanarak Visual C++ uygulaması dağıtma.

Tek tek yeniden dağıtılabilir dosyaları yükleme

Ayrıca, Yeniden Dağıtılabilir DLL'leri uygulama yerel klasörüne doğrudan yüklemek de mümkündür. Uygulama yerel klasörü, yürütülebilir uygulama dosyanızı içeren klasördür. Hizmet verme nedenleriyle bu yükleme konumunu kullanmanızı önermiyoruz.

Olası çalışma zamanı hataları

Windows, uygulamanızın gerektirdiği Yeniden Dağıtılabilir kitaplık DLL'lerinden birini bulamazsa şuna benzer bir ileti görüntüleyebilir: "Library.dll bulunamadığından bu uygulama başlatılamadı. Uygulamayı yeniden yüklemek bu sorunu çözebilir."

Bu tür bir hatayı çözmek için uygulama yükleyicinizin doğru şekilde derlenmesine emin olun. Yeniden dağıtılabilir kitaplıkların hedef sistemde doğru dağıtıldığını doğrulayın. Daha fazla bilgi için bkz . Visual C++ Uygulamasının Bağımlılıklarını Anlama.

Birleştirme modüllerini kullanarak yeniden dağıtma
Visual C++ çalışma zamanı kitaplıklarını klasöre paylaşılan DLL'ler olarak yüklemek için Visual C++ Yeniden Dağıtılabilir birleştirme modüllerinin %windir%\system32\ nasıl kullanılacağını açıklar.

Visual C++ ActiveX Denetimlerini Yeniden Dağıtma
ActiveX Denetimlerini kullanan bir uygulamanın nasıl yeniden dağıtılması gerektiği açıklanmaktadır.

MFC Kitaplığını Yeniden Dağıtma
MFC kullanan bir uygulamanın nasıl yeniden dağıtılacağı açıklanmaktadır.

ATL uygulamasını yeniden dağıtma
ATL kullanan bir uygulamanın nasıl yeniden dağıtılacağını açıklar. Visual Studio 2012 ve sonraki sürümlerinde ATL kitaplığı gerekmez.

Dağıtım Örnekleri
Visual C++ uygulamalarının nasıl dağıtıldığını gösteren örneklere bağlantılar verir.

Masaüstü Uygulamalarını Dağıtma
Visual C++ dağıtım kavramlarını ve teknolojilerini tanıtır.