Exporter (0) Imprimer
Développer tout

Redistribution des fichiers Visual C++

Lorsque vous développez une application à l'aide de Visual C++, vous avez l'avantage de travailler sur un ordinateur qui est non seulement un bon environnement de développement, mais également un environnement idéal sur lequel exécuter et tester des applications. Toutefois, lorsque vous souhaitez déployer votre application sur d'autres ordinateurs, vous devez redistribuer tous les fichiers nécessaires pour prendre en charge l'application sur le système cible. Pour plus d'informations sur les fichiers devant être redistribués avec votre application, consultez Déploiement, exemples et Détermination des DLL à redistribuer.

Seuls certains fichiers Visual C++ sont autorisés à être redistribués avec votre application. Consultez le CLUF pour Visual Studio 2005 et le fichier Redist.txt pour connaître les fichiers qui peuvent être redistribués avec votre application. CLUF.txt se trouve dans le répertoire \Setup sur le premier CD-Rom ou sur le DVD du produit Visual Studio 2005, et Redist.txt dans le répertoire Program Files\Microsoft Visual Studio 2005 sur le second CD-Rom ou le DVD.

Les fichiers Visual C++ peuvent être redistribués en utilisant les modules de fusion redistribuables fournis ou le Visual C++ Redistributable Package, ou en déployant des assemblys Visual C++ spécifiques comme assemblys côte à côte privés dans le dossier local de l'application.

Dans le premier cas, un module de fusion avec un assembly Visual C++ spécifique doit être inclus dans un package Windows Installer ou dans un programme d'installation similaire servant à déployer cette application sur un autre ordinateur. Pour plus d'informations, consultez Redistribution à l'aide de modules de fusion. Un exemple de ce déploiement se trouve dans Comment : déployer à l'aide d'un projet d'installation et de déploiement.

Visual C++ Package Redistribuable (VCRedist_x86.exe, VCRedist_x64.exe, VCRedist_ia64.exe) doit être exécuté sur le système cible comme condition préalable à l'installation de l'application. Ce package installe et enregistre toutes les bibliothèques Visual C++.

RemarqueRemarque

La redistribution des bibliothèques Visual C++ à l'aide de ce package est recommandé pour les applications développées avec Visual C++ Express et pour les cas où le déploiement simultané de toutes les bibliothèques Visual C++ est souhaitable.

Pour obtenir un exemple illustrant l'utilisation de ce package, consultez Comment : déployer à l'aide de XCopy.

Lorsque vous déployez les bibliothèques Visual C++ comme assembly côte à côte privé, les DLL et le fichier manifeste qui composent cet assembly doivent être ajoutés à Windows Installer ou à un package d'installation similaire et déployés sur l'ordinateur cible dans un sous-répertoire du dossier local de l'application, en respectant les règles de déploiement des assemblys privés. Les informations sur les DLL et les fichiers manifeste Visual C++ faisant partie des assemblys Visual C++ figurent dans Visual C++ Libraries as Shared Side-by-Side Assemblies. Une description des règles qui doivent être respectées lors du déploiement des private assemblies en vue du chargement au moment de l'exécution est fournie dans Assembly Searching Sequence. Pour obtenir un exemple du déploiement des bibliothèques Visual C++ comme assembly privé, consultez Comment : déployer à l'aide de XCopy.

Erreurs d'exécution potentielles

Si un manifeste est présent dans votre application mais qu'une bibliothèque Visual C++ requise n'est pas installée dans le dossier WinSxS, vous pouvez obtenir l'un des messages d'erreur suivants selon la version de Windows sur laquelle vous essayez d'exécuter votre application :

  • The application failed to initialize properly (0xc0000135).

  • This application has failed to start because the application configuration is incorrect. Reinstalling application may fix this problem.

  • The system cannot execute the specified program.

Si aucun manifeste n'est présent dans votre application, l'erreur que vous obtenez est fonction du fait que la bibliothèque Visual C++ dont votre application dépend est déployée ou pas dans le dossier local d'application ou dans un dossier partagé tel que le dossier System ou WinSxS.

RemarqueRemarque

Il n'est pas pris en charge pour redistribuer les applications C/C++ qui sont générées sans un manifeste. Les bibliothèques Visual C++ ne peuvent pas être utilisées par les applications de C/C++ sans un manifeste qui lie l'application à ces bibliothèques. Pour plus d'informations, consultez Choix d'une méthode de déploiement.

Si une DLL de bibliothèque Visual C++ (par exemple, MSVCR80.DLL) est accessible (installée dans le dossier local de l'application ou dans le dossier System), vous obtenez

R6034 An application has made an attempt to load the C runtime library incorrectly.

Si la DLL n'est pas accessible et que Windows ne peut pas charger cette DLL pour votre application, vous obtenez

This application has failed to start because MSVCR80.dll was not found. Re-installing the application may fix this problem.

Pour résoudre ces erreurs, vous devez vous assurer que votre application est générée correctement et que les bibliothèques Visual C++ sont déployées correctement sur le système cible. Pour identifier la cause première de ces erreurs d'exécution, suivez les étapes présentées dans Dépannage d'applications isolées C/C++ et d'assemblys côte à côte.

Voir aussi

Ajouts de la communauté

AJOUTER
Afficher:
© 2014 Microsoft