Page De propriétés avancées

La page de propriétés avancées est disponible dans Visual Studio 2019 et versions ultérieures. Pour afficher la documentation de cette version, définissez le contrôle de sélecteur de version Visual Studio pour cet article sur Visual Studio 2019 ou version ultérieure. Il se trouve en haut de la table des matières de cette page. Dans les versions antérieures de Visual Studio, ces propriétés s’affichent sur la page de propriétés Général :

La page de propriétés avancées est disponible dans Visual Studio 2019 et versions ultérieures. Les propriétés spécifiques affichées dépendent du type de projet. Les projets Windows Runtime (plateforme Windows universelle ou UWP) n’affichent pas cette page.

Propriétés avancées

Extension de fichier cible

Spécifie l’extension de fichier à utiliser pour la sortie de build. Par défaut pour les .exe applications, .lib pour les bibliothèques statiques et .dll pour les DLL.

Extensions à supprimer lors du nettoyage

La commande de menu Build>Clean supprime les fichiers du répertoire intermédiaire où la configuration d’un projet est générée. Le système de génération supprime les fichiers qui ont les extensions spécifiées lorsque vous exécutez la commande Clean ou lorsque vous régénérez. Le système de génération supprime également toute sortie connue de la build, quel que soit son emplacement. Les fichiers supprimés incluent toutes les sorties intermédiaires telles que .obj les fichiers. Utilisez des points-virgules (;) pour séparer les extensions. Vous pouvez spécifier des caractères génériques carte (*, ?) dans les extensions.

Pour accéder par programmation à cette propriété, consultez DeleteExtensionsOnClean.

Fichier journal de génération

Vous permet de spécifier un emplacement non par défaut pour le fichier journal créé chaque fois que vous générez un projet. L’emplacement par défaut est spécifié par les macros $(IntDir)$(MSBuildProjectName).log.

Vous pouvez utiliser des macros de projet pour modifier l'emplacement du répertoire. Pour plus d’informations, consultez Macros courantes pour les commandes et propriétés de build.

Architecture de l’outil de génération par défaut

Spécifie s’il faut utiliser les outils de génération x86 ou x64.

Utiliser des bibliothèques de débogage

Spécifie s’il faut créer une build Debug ou Release. Malgré le nom, Utiliser les bibliothèques de débogage est une propriété propre au système de build qui est effectivement abrégée pour « Créer une build de débogage » ou « Créer une build Release ». Il définit plusieurs propriétés du compilateur et de l’éditeur de liens pour les builds Debug ou Release, y compris les paramètres de bibliothèque. Vous pouvez l’utiliser pour créer des configurations de débogage ou de mise en production pour une nouvelle plateforme ou dans un nouveau modèle. Nous vous déconseillons de modifier cette propriété dans une configuration existante. Utilisez plutôt les propriétés du compilateur et de l’éditeur de liens.

Activer la build Unity (JU Mo O)

Permet un processus de génération plus rapide qui combine de nombreux fichiers sources C++ en un ou plusieurs fichiers avant la compilation. Ces fichiers combinés sont appelés fichiers Unity . Ils ne sont pas liés au moteur de jeu Unity.

Copier du contenu vers OutDir

Copiez les éléments marqués comme contenus dans le projet dans le répertoire de sortie du projet ($(OutDir)). Ce paramètre peut simplifier le déploiement. Cette propriété est disponible à partir de Visual Studio 2019 version 16.7.

Copier des références de projet vers OutDir

Copiez les éléments de référence de projet exécutables (FICHIER DLL et EXE) dans le répertoire de sortie du projet ($(OutDir)). Dans les projets C++/CLI (/clr), cette propriété est ignorée. Au lieu de cela, la propriété Copy Local sur chaque référence de projet contrôle si elle est copiée dans le répertoire de sortie. Ce paramètre peut simplifier le déploiement local. Il est disponible à partir de Visual Studio 2019 version 16.7.

Copier les symboles des références de projet vers OutDir

Copiez les fichiers PDB pour les éléments de référence de projet ainsi que les éléments exécutables de référence du projet dans le répertoire de sortie du projet ($(OutDir)). Cette propriété est toujours activée pour les projets C++/CLI. Ce paramètre peut simplifier le déploiement de débogage. Il est disponible à partir de Visual Studio 2019 version 16.7.

Copier le runtime C++ vers OutDir

Copiez les DLL runtime dans le répertoire de sortie du projet ($(OutDir)). Ce paramètre peut simplifier le déploiement local. Il est disponible à partir de Visual Studio 2019 version 16.7.

Utilisation des MFC

Spécifie si le projet MFC est statiquement ou dynamiquement lié à la DLL MFC. Les projets non-MFC sélectionnent Utiliser des bibliothèques Windows standard.

Pour accéder par programmation à cette propriété, consultez useOfMfc.

Jeu de caractères

Spécifie si la macro ou _MBCS le _UNICODE préprocesseur doit être définie. Affecte également le point d’entrée de l’éditeur de liens, le cas échéant.

Pour accéder par programmation à cette propriété, consultez CharacterSet.

Optimisation de l’ensemble du programme

Spécifie l’option du compilateur et /LTCG l’option /GL éditeur de liens. Par défaut, cette propriété est désactivée pour les configurations de débogage et activée pour les configurations Release.

Version de l’ensemble d’outils MSVC

Spécifie la version complète de l’ensemble d’outils MSVC utilisé pour générer le projet. Vous avez peut-être installé différentes versions de mise à jour et d’aperçu d’un ensemble d’outils. Vous pouvez spécifier celui à utiliser ici.

Version de l’ensemble d’outils LLVM

Spécifie la version complète de l’ensemble d’outils LLVM utilisé pour générer le projet. Cette propriété est disponible lorsque LLVM (clang-cl) est sélectionné comme ensemble d’outils de plateforme, à partir de Visual Studio 2019 version 16.9. Pour plus d’informations, consultez Définir une version personnalisée de l’ensemble d’outils LLVM.

Activer la sortie structurée MSVC

Spécifie s’il faut activer la sortie SARIF structurée, qui active la fenêtre Détails du problème et la sortie hiérarchique dans la fenêtre Sortie dans Visual Studio.

Propriétés C++/CLI

Prise en charge du Common Language Runtime

Provoque l’utilisation de l’option du /clr compilateur.

Pour accéder par programmation à cette propriété, consultez ManagedExtensions.

Version du .NET Framework cible

Cette propriété s’applique uniquement lorsque la propriété de prise en charge du Common Language Runtime est définie sur la prise en charge du runtime .NET Framework, c’est-à-dire que le projet cible .NET Framework et qu’elle spécifie la version du .NET Framework.

.NET Target Framework

Cette propriété s’applique uniquement lorsque la propriété de prise en charge du Common Language Runtime est définie sur la prise en charge du runtime .NET, c’est-à-dire que le projet cible .NET.

Cette propriété spécifie le moniker .NET 5+ Target Framework cible, par exemple net6.0-windows ou net7.0-windows8.0.

Activer la build incrémentielle managée

Pour les projets gérés, cette option permet de détecter la visibilité externe lorsque vous générez des assemblys. Si une modification d’un projet managé n’est pas visible pour d’autres projets, les projets dépendants ne sont pas reconstruits. Les builds incrémentielles managées peuvent améliorer considérablement les temps de génération dans les solutions qui incluent des projets managés.

Activer la prise en charge du CLR pour les fichiers individuels

Cette option définit une ManagedAssembly propriété de build qui permet de générer uniquement certains fichiers dans le projet en tant que code managé. Vous devez définir La prise en charge clR pour les fichiers individuels sur Oui si certains fichiers de projet, mais pas tous vos fichiers projet, sont générés en tant que code managé. Cette propriété est disponible uniquement dans les projets qui utilisent l’ensemble d’outils v143 ou ultérieur dans Visual Studio 2022 et versions ultérieures.

Version de Windows cible .NET

Cette propriété s’applique uniquement lorsque la propriété de prise en charge du Common Language Runtime est définie sur la prise en charge du runtime .NET, c’est-à-dire que le projet cible .NET.

Cette propriété spécifie la version minimale de Windows prise en charge par le projet. Cette valeur est utilisée par NuGet pour déterminer la compatibilité des projets et des dépendances de package NuGet. Si un projet A dépend du projet B, la version windows cible du projet A doit être supérieure ou égale au projet B.