Pages de propriétés (C++)
Mise à jour : novembre 2007
Une page de propriétés de projet est un élément d'interface utilisateur Visual Studio qui vous permet de spécifier et d'appliquer des paramètres à vos projets.
Vous accédez aux pages de propriétés en sélectionnant un projet et en cliquant sur Propriétés dans le menu contextuel ou dans le menu Projet. Lorsque vous spécifiez des valeurs dans la boîte de dialogue Pages de propriétés, celles-ci s'appliquent au(x) projet(s) sélectionné(s) dans l'Explorateur de solutions.
Vous pouvez spécifier et appliquer des paramètres de projet à toutes les configurations de génération, ou spécifier des propriétés de projet distinctes pour chaque configuration de génération. Par exemple, vous pouvez spécifier pour la configuration Release des paramètres qui ne s'appliquent pas à la configuration Debug.
Les pages de propriétés sont dynamiques et celles qui s'affichent dépendent des types de fichier du projet. Par exemple, si votre projet ne comporte pas de fichier .idl, la page de propriétés IDL ne sera pas affichée dans la boîte de dialogue Pages de propriétés.
Pour plus d'informations, consultez Comment : spécifier des propriétés de projet avec des pages de propriétés.
Propriétés par défaut et propriétés modifiées
Certaines valeurs de propriété apparaissent en gras, ce qui signifie que la valeur a été modifiée. Le paramètre par défaut d'une propriété au niveau du projet lorsque le nœud du projet est sélectionné dans l'Explorateur de solutions est généralement la valeur par défaut de cette propriété pour l'outil. Par exemple, dans un projet Win32, dans la page de propriétés Génération de code du compilateur, la propriété Activer le regroupement des chaînes a initialement la valeur Non (ne s'affiche pas en gras). Cela signifie que la valeur Non correspond au paramètre par défaut du projet. Si vous utilisez CL.exe à la ligne de commande, /GF n'entre pas en vigueur, sauf spécification contraire.
Si vous modifiez une propriété à l'aide de votre Assistant Application, la valeur s'affiche en gras. Par exemple, dans la même page de propriétés Génération de code, /RTC1 est en vigueur pour la propriété Vérifications complètes à l'exécution. À la ligne de commande, /RTC1 n'est pas activé par défaut. Dans ce cas, l'Assistant Application a modifié la configuration par défaut du projet pour la propriété.
Un sous-ensemble des valeurs par défaut du projet est exposé et modifiable. Pour plus d'informations, consultez la section Paramètres par défaut du projet dans Général, page de propriétés (Projet).
Réinitialisation des propriétés
Lorsque vous affichez la boîte de dialogue Pages de propriétés d'un projet et lorsque le nœud du projet est sélectionné dans l'Explorateur de solutions, vous pouvez également choisir <hériter des paramètres par défaut du projet> pour chaque propriété.
Cliquez sur Appliquer pour veiller à ce que la boîte de dialogue Pages de propriétés soit actualisée en tenant compte de vos dernières sélections lorsque vous réinitialisez une propriété à sa valeur par défaut pour le projet.
Lorsque vous ouvrez la boîte de dialogue Pages de propriétés d'un projet alors qu'un fichier est sélectionné dans l'Explorateur de solutions, une valeur de propriété affichée en gras indique que cette valeur a été modifiée au niveau du fichier. De même, vous pouvez également sélectionner <hériter du projet> pour chaque propriété. Si les propriétés de nombreux fichiers ont été modifiées, la durée de génération du projet augmente.
Les valeurs par défaut de projet sont pour la plupart des valeurs par défaut système (plateforme). Certains paramètres par défaut du projet sont dérivés des feuilles de style qui sont appliquées lors de la mise à jour des propriétés dans la section Paramètres par défaut du projet de la page de configuration générale du projet (consultez Général, page de propriétés (Projet)).
Entrée de valeurs définies par l'utilisateur
D'autres propriétés vous demandent de spécifier des valeurs. Certaines propriétés prennent une ou deux valeurs (propriétés multiples) tandis que d'autres n'en prennent qu'une (propriétés uniques).
Il est possible de taper directement la valeur dans la colonne de droite de la page de propriétés. Séparez les valeurs par un point-virgule. Utilisez uniquement des caractères alphabétiques ou numériques pour ces propriétés. Ces valeurs ne sont soumises à aucune vérification des erreurs.
Vous pouvez également sélectionner <Modifier...> dans la liste déroulante (pour les propriétés uniques) ou le bouton de navigation (pour une propriété multiple). Une boîte de dialogue s'ouvre alors, dans laquelle vous pouvez entrer une ou plusieurs valeurs pour la propriété. Le titre de cette boîte de dialogue sera identique à celui de la propriété que vous éditez. Pour les propriétés multiples, entrez une valeur par ligne en utilisant le retour chariot après chaque valeur.
Les zones d'édition des propriétés multiples contiennent une case à cocher appelée hériter du projet (pour un fichier) ou hériter des paramètres par défaut du projet (au niveau du projet). Cette case à cocher est activée par défaut, ce qui signifie que la propriété peut hériter des valeurs du projet, si un fichier est sélectionné, ou des valeurs par défaut du projet, si le projet est sélectionné dans l'Explorateur de solutions.
Vous noterez que les valeurs affichées pour une propriété multiple dans la boîte de dialogue des pages de propriétés reflètent uniquement les paramètres de propriété au niveau actuel. Ainsi, si un fichier est sélectionné dans l'Explorateur de solutions et que vous sélectionnez la propriété Définition de prétraitement C/C++, la page de propriétés n'affichera pas de définition de prétraitement au niveau du projet. Toutefois, si vous ouvrez la zone d'édition de la propriété multiple, vous pouvez afficher toutes les valeurs héritées de la propriété.
Si vous utilisez le modèle de projet Visual C++, sachez que ce comportement est également valable pour les objets dans les fichiers et les projets. Autrement dit, lors de la recherche des valeurs d'une propriété au niveau des fichiers, vous n'obtiendrez pas les valeurs pour cette propriété au niveau du projet ; il vous faudra obtenir explicitement les valeurs de la propriété au niveau du projet. Sachez que certaines valeurs héritées d'une propriété peuvent provenir d'une feuille de style qui n'est pas accessible par programme dans cette version.
Macros $(Inherit) et $(NoInherit)
Remarquez que vous pouvez utiliser deux macros pour les propriétés auxquelles vous avez affecté des valeurs définies par l'utilisateur :
$(Inherit)
$(NoInherit)
La désactivation de la case à cocher (par exemple hériter des paramètres par défaut du projet) revient à spécifier $(NoInherit). L'utilisation de la case à cocher est plus aisée. Si vous spécifiez $(NoInherit), il se peut que vous souhaitiez toutefois définir vos propres valeurs.
Quel que soit l'état de la case à cocher hériter du projet (ou hériter des paramètres par défaut du projet), si vous utilisez l'une de ces macros dans la zone d'édition, l'état de la case à cocher est ignoré.
Si vous utilisez $(NoInherit) pour une propriété, vérifiez si certains paramètres par défaut du projet affectent la propriété. Si c'est le cas, vous risquez de substituer accidentellement des paramètres par défaut du projet que vous avez spécifiés.
Voir aussi
Tâches
Comment : créer et supprimer les dépendances d'un projet
Comment : créer et modifier des configurations