Aracılığıyla paylaş


Visual C++ dosyalarını yeniden dağıtma

Not

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

Visual C++ Çalışma Zamanı Yeniden Dağıtılabilir paketinin, birleştirme modüllerinin ve tek tek ikili dosyaların dağıtımı lisanslı Visual Studio kullanıcılarla sınırlıdır ve Microsoft Yazılım Lisans Koşulları'na tabidir.

Bir uygulamayı dağıtırken, onu desteklemek için gerekli tüm dosyaları da dağıtmalısınız. Microsoft bu dosyalardan herhangi birini sağlı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 iletişim kutusunda License Terms bağlantısını seçin. ayrıca Visual Studio License Directory adresinden ilgili Microsoft Yazılımı Lisans Koşulları ve lisanslarını indirebilirsiniz.

Visual Studio 2022 Microsoft Yazılım Lisans Koşulları'nın "Dağıtılabilir Kod" bölümünde belirtilen "REDIST listesi"ni görüntülemek için Microsoft Visual Studio 2022 için dağıtılabilir kod dosyaları kısmına bakın.

Visual Studio 2019 Microsoft Yazılım Lisans Koşulları'nın "Dağıtılabilir Kod" bölümünde atıfta bulunulan "REDIST listesi"ni görüntülemek için bakınız 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şvurulan "REDIST listesi"ni görüntülemek için Microsoft Visual Studio 2017 için Dağıtılabilir kod dosyaları'na bakın.

Visual Studio 2015 Microsoft Yazılım Lisans Koşulları'nın "Dağıtılabilir Kod" bölümünde başvurulan "REDIST listesi"ni görüntülemek için Microsoft Visual Studio 2015 için Dağıtılabilir kod dosyaları bölümüne bakın.

Yeniden dağıtılabilir dosyalar hakkında daha fazla bilgi için bkz. Hangi dinamik bağlantı kitaplıklarının (DLL) 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.arm64.exe, vc_redist.x64.exe ve vc_redist.x86.exe olarak adlandırılır. Visual Studio 2015, 2017 ve 2019'da vcredist_x86.exe, vcredist_x64.exe ve (yalnızca 2015) vcredist_arm.exe adları altında da 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, yeniden dağıtılabilir dosyalar %VCINSTALLDIR%Redist\MSVC\v143 klasöründedir. Visual Studio 2019'un en son sürümünde, yeniden dağıtılabilir dosyaları %VCINSTALLDIR%Redist\MSVC\v142 klasöründe bulabilirsiniz. Hem Visual Studio 2017 hem de Visual Studio 2019'da dosyalar %VCToolsRedistDir%'da da bulunur. Visual Studio 2015'te bu dosyaları %VCINSTALLDIR%redist\<locale>'da bulabilirsiniz; 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'nde Visual C++ <version> Yeniden dağıtılabilir birleştirme modülleri 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'de yüklendiklerinde, yeniden dağıtılabilir birleştirme modüllerini %VCINSTALLDIR%Redist\MSVC\v143\MergeModules içinde bulabilirsiniz.

Visual Studio 2019'un en son sürümünde, yeniden dağıtılabilir birleştirme modülleri %VCINSTALLDIR%Redist\MSVC\v142\MergeModules içinde bulunur. Hem Visual Studio 2019 hem de Visual Studio 2017'de %VCToolsRedistDir%MergeModules'da da bulunur. Visual Studio 2015'te Program Files [(x86)]\Common Files\Merge Modules içinde bulunur.

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ğını gösteren 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 çalıştırmak için bayrağını kullanırsa hata iletisi görüntülenmez. Her iki durumda da, Microsoft yükleyicisi hatayı günlüğe kaydeder ve çağırana 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 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 , veya platformun yüklü sürümlerine bağlıdır. (Alt anahtarı yalnızca yüklü x86 paketinin sürümünü bir x64 platformunda görüntülemek için Regedit kullanıyorsanız kontrol etmeniz gerekir.)

Sürüm numarası, dize değerinde ve ayrıca , , ve değerleri kümesinde depolanır. 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 paketin 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. , veya seçenekleri, kullanılabilir seçeneklerin listelendiği bir iletişim kutusu görüntüler. Yeniden Dağıtılabilir'i yüklemeyi, onarmayı veya kaldırmayı belirtebilirsiniz. Bu seçenek, 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 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 seçenek de belirtebilirsiniz . seçeneği , yeniden başlatma girişimlerini engeller. Varsayılan olarak, içinde bir günlük dosyası oluşturulur. Belirli bir dosyada oturum açmak için kullanabilirsiniz .

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 (dosyalar) 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 yapılan merkezi dağıtım, Microsoft'un çalışma zamanı kitaplık dosyalarına bağımsız olarak hizmet vermesini mümkün kılar. Uygulamanızın kaldırılması, merkezi dağıtım 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ı 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 DLL'lerden 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 hatanın giderilmesi için uygulama yükleyicinizin doğru şekilde oluşturulduğunu doğrulayın. 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++ Yeniden Dağıtılabilir birleştirme modüllerini kullanarak Visual C++ Çalışma Zamanı kitaplıklarını klasöre paylaşılan DLL'ler olarak yüklemeyi açıklar.
  • Visual C++ ActiveX denetimlerini yeniden dağıtma, ActiveX denetimlerini kullanan bir uygulamanın nasıl yeniden dağıtılacağını açıklar.
  • Microsoft Foundation Sınıf (MFC) Kitaplığı'nı yeniden dağıtma, MFC kullanan bir uygulamanın nasıl yeniden dağıtılacağını açıklar.
  • Etkin Şablon Kitaplığı (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ümlerde ATL kitaplığı gerekmez.
  • Dağıtım örnekleri , Visual C++ uygulamalarının nasıl dağıtıldığını gösteren örneklerin bağlantılarını içerir.
  • Masaüstü uygulamalarını dağıtma , Visual C++ dağıtım kavramlarını ve teknolojilerini tanıtır.
  • Desteklenen en son Visual C++ Yeniden Dağıtılabilir indirmeleri , desteklenen en son Visual C++ Yeniden Dağıtılabilir indirmelerinin bağlantılarını içerir.