Dela via


C++ Runtime-ramverkspaket för Brygga för skrivbordsversion

Den här artikeln beskriver hur du skapar en Brygga för skrivbordsversion container som innehåller rätt C++ Runtime-bibliotek.

Ursprunglig produktversion: Windows 10
Ursprungligt KB-nummer: 3176696

Sammanfattning

Windows-skrivbordsprogram som är beroende av C++ Runtime-biblioteken måste ange motsvarande version av C++ Runtime-ramverkspaketet för Brygga för skrivbordsversion när programpaketet skapas. Detta måste göras i stället för att bara omdistribuera C++ Runtime-biblioteken som ingår i Visual Studio eller Visual C++ Runtime redistributable (VCRedist). Windows-skrivbordsprogram som körs i en Brygga för skrivbordsversion container kan inte använda C++ Runtime-biblioteken som ingår i Visual Studio eller VCRedist. Ett program som körs i en Brygga för skrivbordsversion container och som använder en felaktig version av C++-körningsbiblioteken kan misslyckas när det försöker komma åt resurser som filsystemet eller registret. I den här artikeln beskrivs hur du skapar en Brygga för skrivbordsversion container som innehåller rätt C++ Runtime-bibliotek.

Installera och uppdatera Skrivbordsramverkspaket

Microsoft tillhandahåller C++ Runtime-ramverkspaket som gör det möjligt för program att referera till C++-körningen från skrivbordsprogram som distribueras via Windows Store. Dessa paket distribueras och uppdateras via Windows Store och hanteras på samma sätt som C++ UWP-ramverkspaket.

I utvecklingssyfte ingår den aktuella versionen (v14.0) av både felsöknings- och detaljhandelsappxpaket i Visual Studio 2022 när du väljer arbetsbelastningen Universell Windows-plattform Development med den valfria komponenten C++ (v143) Universal Windows Tools. Paketen finns under %ProgramFiles(x86)%\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop\14.0.

Kommentar

Följande paketnedladdningslänkar är nu inaktuella och kanske inte längre fungerar i framtiden. Se till att använda metoden som beskrivs ovan för att hämta ramverkspaketen.

Legacy Desktop-ramverkspaket

Äldre C++ Runtime-ramverkspaket för skrivbordsprogram, v11.0 och v12.0, kan laddas ned och installeras från dessa platser:

C++ Runtime-ramverkspaketen kopieras till en undermapp under %ProgramFiles(x86)%\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop. Du kan installera paketen manuellt med powershell-cmdleten Add-AppxPackage .

Så här refererar du till desktop-ramverkspaketen

I programmets AppxManifest.xml-fil anger du ett PackageDependency värde som motsvarar lämpligt ramverkspaket:

  • Version 11.0:

    <Dependencies>
        <PackageDependency Name="Microsoft.VCLibs.110.00.UWPDesktop" MinVersion="11.0.61135.0" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US"/>
    </Dependencies>
    
  • Version 12.0:

    <Dependencies>
        <PackageDependency Name="Microsoft.VCLibs.120.00.UWPDesktop" MinVersion="120.40653.0" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" />
        <PackageDependency Name="Microsoft.VCLibs.120.00.UWPDesktop" MinVersion="12.0.40653.0" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" />
    </Dependencies>
    
  • Version 14.0:

    <Dependencies>
        <PackageDependency Name="Microsoft.VCLibs.140.00.UWPDesktop" MinVersion="14.0.24217.0" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" />
    </Dependencies>
    

Programmet installerar nu DLL:er för C++ Runtime från beroendepaketet när det distribueras.

Referenser

Använda Visual C++ Runtime i Centennial-projekt