Packages d’infrastructure runtime C++ pour Pont du bureau

Cet article explique comment créer un conteneur Pont du bureau qui inclut les bibliothèques runtime C++ correctes.

Version d’origine du produit : Windows 10
Numéro de la base de connaissances d’origine : 3176696

Résumé

Les applications de bureau Windows qui ont une dépendance vis-à-vis des bibliothèques runtime C++ doivent spécifier la version correspondante du package d’infrastructure runtime C++ pour Pont du bureau lors de la création du package d’application. Cette opération doit être effectuée au lieu de simplement redistribuer les bibliothèques runtime C++ incluses avec Visual Studio ou visual C++ Runtime redistributable (VCRedist). Les applications de bureau Windows qui s’exécutent dans un conteneur Pont du bureau ne peuvent pas utiliser les bibliothèques Runtime C++ incluses dans Visual Studio ou VCRedist. Une application qui s’exécute dans un conteneur Pont du bureau et qui utilise une version incorrecte des bibliothèques runtime C++ peut échouer lorsqu’elle tente d’accéder à des ressources telles que le système de fichiers ou le Registre. Cet article explique comment créer un conteneur Pont du bureau qui inclut les bibliothèques runtime C++ correctes.

Guide pratique pour installer et mettre à jour des packages d’infrastructure de bureau

Microsoft fournit des packages d’infrastructure runtime C++ pour permettre aux applications de référencer le runtime C++ à partir d’applications de bureau distribuées via le Windows Store. Ces packages sont distribués et mis à jour via le Windows Store et sont gérés de la même façon que les packages d’infrastructure UWP C++.

À des fins de développement, la version actuelle (v14.0) des packages appx de débogage et de vente au détail est incluse dans Visual Studio 2019 lorsque vous choisissez la charge de travail développement plateforme Windows universelle avec le composant Outils Windows universels C++ (v142) facultatif. Les packages se trouvent sous %ProgramFiles(x86)%\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop\14.0.

Dans certains scénarios tels que Bac à sable Windows ou lorsque les applications s’exécutent sur des machines hors connexion, les développeurs peuvent trouver plus facile de télécharger les packages correspondant à leurs architectures de déploiement à partir de l’un des liens ci-dessous et de les installer manuellement à l’aide de l’applet Add-AppxPackage de commande PowerShell :

Packages d’infrastructure de bureau hérités

Les packages d’infrastructure runtime C++ plus anciens pour les applications de bureau, v11.0 et v12.0, peuvent être téléchargés et installés à partir de ces emplacements :

Les packages d’infrastructure runtime C++ seront copiés dans un sous-dossier sous %ProgramFiles(x86)%\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop. Vous pouvez installer les packages manuellement à l’aide de l’applet de Add-AppxPackage commande PowerShell.

Guide pratique pour référencer les packages d’infrastructure de bureau

Dans le fichier AppxManifest.xml de votre application, spécifiez une PackageDependency valeur qui correspond au package d’infrastructure approprié :

  • 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>
    

L’application installe maintenant les DLL runtime C++ à partir du package de dépendances lors de son déploiement.

References

Utilisation du runtime Visual C++ dans le projet Centennial