Dela via


Omdistribuera Visual C++-filer

Not

Är du här för att du letar efter en nedladdning av en av Visual C++ Runtime-filerna? Gå till sidan för de senaste Visual C++ Redistributable-nedladdningarna som stöds.

Omdistribuerbara filer och licensiering

Distribution av Visual C++ Runtime Redistributable-paketet, sammanslagningsmoduler och enskilda binärfiler är begränsad till licensierade Visual Studio användare och omfattas av Licensvillkor för programvara från Microsoft.

När du distribuerar ett program måste du även distribuera de filer som krävs för att stödja det. Om Microsoft tillhandahåller någon av dessa filer kontrollerar du om du har tillåtelse att omdistribuera dem. Du hittar en länk till licensvillkoren för Visual Studio i IDE. I dialogrutan Om Microsoft Visual Studio väljer du länken License Terms. Du kan också ladda ned relevanta licensvillkor och licenser för Microsoft-programvara från Visual Studio License Directory.

Om du vill visa "REDIST-listan" som refereras i avsnittet "Distribuerbar kod" i Visual Studio 2022 Microsoft Software License Terms kan du läsa Distributable code files for Microsoft Visual Studio 2022.

Om du vill visa "REDIST-listan" som refereras i avsnittet "Distribuerbar kod" i Visual Studio 2019 Microsoft Software License Terms kan du läsa Distributable code files for Microsoft Visual Studio 2019.

Information om hur du visar "REDIST-listan" som refereras i avsnittet "Distribuerbar kod" i Visual Studio Licensvillkor för Microsoft 2017 finns i Distributable code files for Microsoft Visual Studio 2017.

Information om hur du visar "REDIST-listan" som refereras i avsnittet "Distribuerbar kod" i Visual Studio licensvillkoren för Microsoft 2015 finns i Distributable code files for Microsoft Visual Studio 2015.

Mer information om omdistribuerbara filer finns i Ta reda på vilka DLL:er (dynamic-link libraries) som ska distribueras och distributionsexempel.

Leta upp de omdistribuerbara filerna

Om du vill distribuera omdistribuerbara filer kan du använda de omdistribuerbara paket som har installerats av Visual Studio. I versioner av Visual Studio sedan 2017 heter dessa filer vc_redist.arm64.exe, vc_redist.x64.exe och vc_redist.x86.exe. I Visual Studio 2015, 2017 och 2019 är de också tillgängliga under namnen vcredist_x86.exe, vcredist_x64.exe och (endast 2015) vcredist_arm.exe.

Det enklaste sättet att hitta de omdistribuerbara filerna är att använda miljövariabler som anges i en kommandotolk för utvecklare. I Visual Studio 2022 finns de omdistribuerbara filerna i mappen %VCINSTALLDIR%Redist\MSVC\v143. I den senaste versionen av Visual Studio 2019 hittar du de omdistribuerbara filerna i mappen %VCINSTALLDIR%Redist\MSVC\v142. I både Visual Studio 2017 och Visual Studio 2019 finns även filerna i %VCToolsRedistDir%. I Visual Studio 2015 hittar du filerna i %VCINSTALLDIR%redist\<locale>, där <locale> är språkvarianten för de omdistribuerbara paketen.

I Visual Studio 2022 och 2019 ingår sammanslagningsmodulfiler i en valfri installationsbar komponent med namnet Visual C++ <version> Redistributable merge modules i Visual Studio Installer. Sammanslagningsmodulerna installeras som standard som en del av en C++-installation i Visual Studio 2017 och Visual Studio 2015. När de installeras i Visual Studio 2022 hittar du de omdistribuerbara sammanslagningsmodulerna i %VCINSTALLDIR%Redist\MSVC\v143\MergeModules.

I den senaste versionen av Visual Studio 2019 finns de omdistribuerbara sammanslagningsmodulerna i %VCINSTALLDIR%Redist\MSVC\v142\MergeModules. I både Visual Studio 2019 och Visual Studio 2017 finns de också i %VCToolsRedistDir%MergeModules. I Visual Studio 2015 finns de i Program Files [(x86)]\Common Files\Merge Modules.

Installera de omdistribuerbara paketen

Visual C++ Redistributable-paketen installerar och registrerar alla Visual C++-bibliotek. Om du använder en kör du den som en förutsättning i målsystemet innan du installerar programmet. Vi rekommenderar att du använder dessa paket för dina distributioner eftersom de aktiverar automatisk uppdatering av Visual C++-biblioteken. Ett exempel som visar hur du använder dessa paket finns i Genomgång: Distribuera ett Visuellt C++-program med hjälp av Visual C++ Redistributable-paketet.

Varje Visual C++ Redistributable-paket kontrollerar om det finns en nyare version på datorn. Om en nyare version hittas installeras inte paketet. I Visual Studio 2015 eller senare visar omdistribuerbara paket ett felmeddelande om att installationen misslyckades. Om ett paket använder flaggan för att köras visas inget felmeddelande. I båda fallen loggar Microsoft-installationsprogrammet felet och ett felresultat returneras till anroparen.

I Visual Studio 2015 och senare kan du undvika det här felet genom att kontrollera registret för att ta reda på om en nyare version har installerats. Det aktuella installerade versionsnumret lagras i -nyckeln.

Versionsnumret är 14,0 för Visual Studio 2015, 2017, 2019 och 2022 eftersom den senaste Redistributable är binärkompatibel med tidigare versioner tillbaka till 2015. Nyckeln är , eller beroende på de installerade versionerna för plattformen. (Du behöver bara kontrollera under undernyckeln om du använder Regedit för att visa versionen av det installerade x86-paketet på en x64-plattform.)

Versionsnumret lagras i strängvärdet och även i uppsättningen med , , och -värden. Om du vill undvika ett fel vid installationen måste du hoppa över installationen av det omdistribuerbara paketet om den installerade versionen är nyare.

Kommandoradsalternativ för de omdistribuerbara paketen

Visual C++ Redistributable stöder flera kommandoradsalternativ. Alternativen , , eller visar en dialogruta som visar de tillgängliga alternativen. Du kan ange att installera, reparera eller avinstallera Redistributable. Alternativet kopierar det fullständiga innehållet i Redistributable i den aktuella katalogen.

Som standard installerar Redistributable sina komponenter och uppmanar användaren att ange information samt om den ska startas om efter installationen. Du kan ange alternativet som visar förloppet men som annars inte kräver användarinteraktion. Du kan också ange ett alternativ som inte visar något användargränssnitt eller kräver någon användarinteraktion. Alternativet undertrycker alla försök att starta om. Som standard skapas en loggfil i . Du kan använda för att logga in på en specifik fil.

Det här exempelkommandot installerar x64 Redistributable. Den visar installationsframstatus men kräver inte användarinteraktion eller omstart:

vc_redist.x64.exe /install /passive /norestart

Installera de omdistribuerbara sammanslagningsmodulerna

Viktig

Sammanslagningsmoduler ( filer) för Visual C++ Redistributable-filer är inaktuella. Vi rekommenderar inte att du använder dem för programdistribution. I stället rekommenderar vi central distribution av Visual C++ Redistributable-paketet. Central distribution av ett omdistribuerbart paket gör det möjligt för Microsoft att hantera runtime-biblioteksfiler oberoende av varandra. En avinstallation av din app kan inte påverka andra program som också använder central distribution.

När du använder ett omdistribuerbart paket för central distribution ansvarar du inte för att spåra och underhålla körningsbiblioteken. Annars kräver en uppdatering av runtime-biblioteksfilerna att du uppdaterar och distribuerar om installationsprogrammet. Din app kan vara sårbar för buggar eller säkerhetsproblem tills du gör det.

Omdistribuerbara sammanslagningsmoduler måste ingå i det Windows Installer-paket (eller liknande installationspaket) som du använder för att distribuera ditt program. Mer information finns i Omdistribuera med hjälp av sammanslagningsmoduler. Ett exempel finns i Genomgång: Distribuera ett Visual C++-program med hjälp av ett konfigurationsprojekt.

Installera enskilda omdistribuerbara filer

Det går också att installera redistributerbara DLL:er direkt i den programlokala mappen. Den lokala mappen för programmet är mappen som innehåller den körbara programfilen. Av underhållsskäl rekommenderar vi inte att du använder den här installationsplatsen.

Potentiella körningsfel

Om Windows inte kan hitta någon av de omdistribuerbara DLL:er som krävs av ditt program kan det visa ett meddelande som liknar det här: "Det här programmet kunde inte starta eftersom library.dll hittades inte. Om du installerar om programmet kan det här problemet åtgärdas."

Lös den här typen av fel genom att se till att programinstallationsprogrammet byggs korrekt. Kontrollera att de omdistribuerbara biblioteken distribueras korrekt i målsystemet. Mer information finns i Förstå beroenden för ett Visual C++-program.

  • Omdistribuera med hjälp av merge-moduler beskriver hur du använder Visual C++ Redistributable merge-moduler för att installera Visual C++ Runtime-biblioteken som delade DLL:er i mappen.
  • Redistribute Visual C++ ActiveX-kontroller beskriver hur du distribuerar om ett program som använder ActiveX-kontroller.
  • Omdistribuera MFC-biblioteket (Microsoft Foundation Class) beskriver hur du distribuerar om ett program som använder MFC.
  • Omdistribuera ett ATL-program (Active Template Library) beskrivs hur du distribuerar om ett program som använder en ATL. I Visual Studio 2012 och senare krävs inget ATL-bibliotek.
  • Distributionsexempel länkar till exempel som visar hur du distribuerar Visual C++-program.
  • Distribuera skrivbordsprogram introducerar koncept och tekniker för Visual C++-distribution.
  • Senaste stödda Visual C++ Redistributable-nedladdningar länkar till de senaste stödda Visual C++ Redistributable-nedladdningarna.