VCCLCompilerTool, interface
L'objet VCCLCompilerTool expose les fonctionnalités des options du compilateur C++. Consultez Options du compilateur, pour plus d'informations sur les options du compilateur.
Espace de noms : Microsoft.VisualStudio.VCProjectEngine
Assembly : Microsoft.VisualStudio.VCProjectEngine (dans Microsoft.VisualStudio.VCProjectEngine.dll)
Syntaxe
'Déclaration
<GuidAttribute("3D6193F2-8B5D-4B0A-967F-7D163D918848")> _
Public Interface VCCLCompilerTool
[GuidAttribute("3D6193F2-8B5D-4B0A-967F-7D163D918848")]
public interface VCCLCompilerTool
[GuidAttribute(L"3D6193F2-8B5D-4B0A-967F-7D163D918848")]
public interface class VCCLCompilerTool
[<GuidAttribute("3D6193F2-8B5D-4B0A-967F-7D163D918848")>]
type VCCLCompilerTool = interface end
public interface VCCLCompilerTool
Le type VCCLCompilerTool expose les membres suivants.
Propriétés
Nom | Description | |
---|---|---|
AdditionalIncludeDirectories | Obtient ou définit un ou plusieurs répertoires à ajouter au chemin d'accès Include.AdditionalIncludeDirectories expose les fonctionnalités de l'option /I (Autres répertoires Include) du compilateur, l'option Pages de propriétés MIDL : Général du compilateur MIDL, et l'option Pages de propriétés Ressources du compilateur de ressources. | |
AdditionalOptions | Obtient ou définit des options à ajouter à la fin de la ligne de commande immédiatement avant le ou les noms de fichiers.Par exemple : lorsqu'une option n'est pas prise en charge dans le modèle d'objet. | |
AdditionalUsingDirectories | Obtient ou définit un répertoire à explorer afin de résoudre les références de fichiers passées à la directive #using, directive (C++).AdditionalUsingDirectories expose les fonctions de l'option /AI (Spécifier les répertoires des métadonnées) du compilateur. | |
AssemblerListingLocation | Obtient ou définit le chemin d'accès relatif et/ou le nom pour un fichier listing ASM.AssemblerListingLocation expose les fonctionnalités de l'option /Fa du compilateur. | |
AssemblerOutput | Obtient ou définit le contenu du fichier de sortie en langage assembleur.AssemblerOutput expose les fonctionnalités des options /FA, /Fa (Fichier listing) du compilateur. | |
BasicRuntimeChecks | Obtient ou définit une valeur indiquant s'il convient d'effectuer une vérification complète des erreurs au moment de l'exécution (/RTC (Vérifications des erreurs au moment de l'exécution)), une vérification de la validité du frame de pile au moment de l'exécution (/RTC (Vérifications des erreurs au moment de l'exécution)) et une vérification des variables non initialisées au moment de l'exécution (/RTC (Vérifications des erreurs au moment de l'exécution)). | |
BrowseInformation | Spécifie le niveau d'parcourt les informations dans le fichier .bsc.BrowseInformation expose les fonctionnalités des options /FR, /Fr (Créer un fichier .sbr) du compilateur. | |
BrowseInformationFile | Obtient ou définit le nom facultatif du fichier d'informations du navigateur.BrowseInformationFile expose les fonctionnalités des options /FR, /Fr (Créer un fichier .sbr) du compilateur. | |
BufferSecurityCheck | Obtient ou définit une valeur indiquant s'il faut rechercher les dépassements de mémoire tampon.BufferSecurityCheck expose les fonctions de l'option /GS (Vérification de la sécurité de la mémoire tampon) du compilateur. | |
CallingConvention | Obtient ou définit la convention d'appel par défaut pour votre application.CallingConvention expose les fonctionnalités des options /Gd, /Gr, /Gv, /Gz (Convention d'appel) du compilateur. | |
CompileAs | Sélectionne l'option de langage de compilation pour les fichiers .c et .cpp.CompileAs expose les fonctionnalités des options /Tc, /Tp, /TC, /TP (Spécifier le type de fichier source) du compilateur. | |
CompileAsManaged | Obtient ou définit une valeur indiquant les options du compilateur. | |
CompileOnly | Obtient ou définit une valeur indiquant s'il faut compiler sans liaison ou non. | |
DebugInformationFormat | Obtient ou définit le type d'informations de débogage générées par le compilateur.DebugInformationFormat expose les fonctionnalités des options /Z7, /Zi, /ZI (Format des informations de débogage) du compilateur. | |
DefaultCharIsUnsigned | Obtient ou définit le type de caractère par défaut non signé.DefaultCharIsUnsigned expose les fonctions de l'option /J (Type de caractère par défaut non signé) du compilateur. | |
Detect64BitPortabilityProblems | Obtient ou définit une valeur indiquant si le compilateur doit rechercher les problèmes de portabilité 64 bits.Detect64BitPortabilityProblems expose les fonctions de l'option /Wp64 (Détecter les problèmes de portabilité 64 bits) du compilateur. | |
DisableLanguageExtensions | Obtient ou définit une valeur indiquant s'il faut supprimer les extensions de langage.DisableLanguageExtensions expose les fonctions de l'option /Za, /Ze (Désactiver les extensions de langage) du compilateur. | |
DisableSpecificWarnings | Obtient ou définit une valeur qui désactive les numéros d'avertissement désirés ; place des nombres dans une liste délimitée par des points-virgules.DisableSpecificWarnings expose les fonctions de l'option /w, /Wn, /WX, /Wall, /wln, /wdn, /wen, /won (Niveau d'avertissement) du compilateur. | |
EnableEnhancedInstructionSet | Obtient ou définit une valeur qui active l'utilisation des instructions trouvées dans les processeurs qui prennent en charge les jeux d'instructions améliorés, par exemple les améliorations SSE et SSE2 apportées à IA-32.EnableEnhancedInstructionSet expose les fonctions de l'option /ARCH du compilateur. | |
EnableFiberSafeOptimizations | Obtient ou définit une valeur qui active l'optimisation de l'espace mémoire en cas d'utilisation de fibres et l'accès au stockage local des threads.EnableFiberSafeOptimizations expose les fonctions de l'option /GT (Prendre en charge le stockage local des threads avec fibres sécurisées) du compilateur. | |
EnableFunctionLevelLinking | Obtient ou définit une valeur qui active la liaison au niveau des fonctions.EnableFunctionLevelLinking expose les fonctions de l'option /Gy (Activer la liaison au niveau des fonctions) du compilateur. | |
EnableIntrinsicFunctions | Obtient ou définit une valeur indiquant s'il faut utiliser des fonctions intrinsèques afin de produire un code plus rapide, mais éventuellement plus grand.EnableIntrinsicFunctions expose les fonctions de l'option /Oi (Générer des fonctions intrinsèques) du compilateur. | |
EnablePREfast | Obtient ou définit une valeur indiquant si l'analyse du code natif est activée. | |
ErrorReporting | Obtient ou définit le rapport d'erreurs du compilateur. | |
ExceptionHandling | Obtient ou définit une valeur utilisée pour les appels aux destructeurs des objets automatiques au cours d'un désempilage engendré par la levée d'une exception.ExceptionHandling expose les fonctions de l'option /EH (Modèle de gestion des exceptions) du compilateur. | |
ExecutionBucket | Infrastructure. Réservé à un usage interne Microsoft. | |
ExpandAttributedSource | Obtient ou définit une valeur indiquant s'il faut créer un fichier listing avec attributs développés injectés dans le fichier source.ExpandAttributedSource expose les fonctions de l'option /Fx (Fusionner le code injecté) du compilateur. | |
FavorSizeOrSpeed | Obtient ou définit une valeur indiquant s'il faut privilégier la taille de codage ou la vitesse de codage.FavorSizeOrSpeed expose les fonctionnalités des options /Os, /Ot (Favoriser la taille du code, Favoriser la vitesse du code) du compilateur. | |
FloatingPointExceptions | Définit ou obtient une valeur indiquant si la gestion des exceptions de virgule flottante définie par l'utilisateur est activée. | |
floatingPointModel | Définit ou obtient le modèle de virgule flottante. | |
ForceConformanceInForLoopScope | Obtient ou définit une valeur indiquant s'il faut forcer le compilateur à se conformer à la portée locale dans une boucle For.ForceConformanceInForLoopScope expose les fonctions de l'option /Zc:forScope (Forcer la conformité à la portée de la boucle for) du compilateur. | |
ForcedIncludeFiles | Obtient ou définit une valeur qui spécifie un ou plusieurs fichiers Include forcés.ForcedIncludeFiles expose les fonctions de l'option /FI (Nom du fichier Include imposé) du compilateur. | |
ForcedUsingFiles | Impose l'utilisation d'un nom de fichier, comme s'il avait été passé à la directive #using, directive (C++).ForcedUsingFiles expose les fonctions de l'option /FU (Nom du fichier #using imposé) du compilateur. | |
FullIncludePath | Obtient une liste de tous les répertoires inclus dans la génération ; une concaténation de répertoires spécifiés avec /I et de répertoires spécifiés dans la boîte de dialogue Répertoires VC++ (VC++ Directories).Les macros présentes dans ces répertoires seront également évaluées. | |
GeneratePreprocessedFile | Obtient ou définit l'option de prétraitement pour cette configuration.GeneratePreprocessedFile expose les fonctionnalités des options /EP (Prétraiter dans stdout sans directive #line) et /P (Prétraiter jusqu'à un fichier) du compilateur. | |
GenerateXMLDocumentationFiles | Définit ou obtient une valeur indiquant si des fichiers de documentation XML sont générés ou non. | |
IgnoreStandardIncludePath | Obtient ou définit une valeur qui indique s'il faut ignorer le chemin d'accès Include standard.IgnoreStandardIncludePath expose les fonctionnalités de l'option /X (Ignorer les chemins d'accès Include standard) du compilateur, l'option Pages de propriétés MIDL : Général du compilateur MIDL, et l'option Pages de propriétés Ressources du compilateur de ressources. | |
InlineFunctionExpansion | Obtient ou définit le niveau d'expansion des fonctions inline de build.InlineFunctionExpansion expose les fonctionnalités des options /Ob (Expansion des fonctions Inline) du compilateur. | |
KeepComments | Obtient ou définit une valeur indiquant s'il faut supprimer les commentaires du code source.KeepComments expose les fonctions de l'option /C (Conserver les commentaires pendant le prétraitement) du compilateur. | |
MinimalRebuild | Obtient ou définit une valeur indiquant s'il faut détecter les modifications apportées aux définitions de classe C++ et recompiler les fichiers sources affectés.MinimalRebuild expose les fonctions de l'option /Gm (Activer la régénération minimale) du compilateur. | |
ObjectFile | Obtient ou définit un nom de substitution pour le nom de fichier objet par défaut.ObjectFile expose les fonctions de l'option /Fo (Nom de fichier objet) du compilateur. | |
OmitDefaultLibName | Obtient ou définit une valeur indiquant si le nom de bibliothèque par défaut est omis. | |
OmitFramePointers | Obtient ou définit une valeur indiquant si les pointeurs de frame doivent être supprimés.OmitFramePointers expose les fonctions de l'option /Oy (Omission du pointeur frame) du compilateur. | |
OpenMP | Obtient ou définit une valeur indiquant si OpenMP est activé. | |
Optimization | Obtient ou définit les options pour l'optimisation du code.Optimization expose les fonctionnalités des options /Od (Désactiver (Débogage)), /O1, /O2 (Réduire la taille, augmenter la vitesse) et /Ox (Optimisation complète) du compilateur. | |
PrecompiledHeaderFile | Obtient ou définit le chemin d'accès et/ou le nom du fichier d'en-tête précompilé généré.PrecompiledHeaderFile expose les fonctions de l'option /Fp (Nom de fichier .pch) du compilateur. | |
PrecompiledHeaderThrough | Obtient ou définit le nom de fichier d'en-tête à utiliser lors de la création ou de l'utilisation d'un fichier d'en-tête précompilé.PrecompiledHeaderThrough expose les fonctionnalités des options /Yc (Créer un fichier d'en-tête précompilé) et /Yu (Utiliser un fichier d'en-tête précompilé) du compilateur. | |
PreprocessorDefinitions | Obtient ou définit une ou plusieurs définitions de préprocesseur.PreprocessorDefinitions expose les fonctionnalités de l'option /D (Définitions de préprocesseur) du compilateur, l'option Pages de propriétés MIDL : Général du compilateur MIDL, et l'option Pages de propriétés Ressources du compilateur de ressources. | |
ProgramDataBaseFileName | Obtient ou définit un nom pour un fichier .pdb généré par le compilateur et nom de base pour le fichier .idb requis, généré par le compilateur.ProgramDataBaseFileName expose les fonctions de l'option /Fd (Nom de fichier PDB) du compilateur. | |
RuntimeLibrary | Obtient ou définit la bibliothèque runtime pour la liaison.RuntimeLibrary expose les fonctionnalités des options /MD, /MT, /LD (Utiliser la bibliothèque Runtime) du compilateur. | |
RuntimeTypeInfo | Obtient ou définit une valeur indiquant s'il faut ajouter le code pour la vérification des types d'objet C++ au moment de l'exécution (informations de type au moment de l'exécution).RuntimeTypeInfo expose les fonctions de l'option /GR (Activer les informations de type au moment de l'exécution) du compilateur. | |
ShowIncludes | Obtient ou définit une valeur indiquant s'il faut générer une liste des fichiers Include avec les résultats de la compilation.ShowIncludes expose les fonctions de l'option /showIncludes (Liste des fichiers Include) du compilateur. | |
SmallerTypeCheck | Obtient ou définit une valeur indiquant s'il faut activer la conversion des types les plus petits.SmallerTypeCheck expose les fonctions de l'option /RTC (Vérifications des erreurs au moment de l'exécution) du compilateur. | |
StringPooling | Obtient ou définit une valeur indiquant s'il faut activer le regroupement des chaînes en lecture seule afin de générer un code compilé plus compact.StringPooling expose les fonctions de l'option /GF (Supprimer les doublons) du compilateur. | |
StructMemberAlignment | Spécifie des limites de 1-, 2-, 4-, 8- ou 16 octets pour l'alignement des membres de la structure.StructMemberAlignment expose les fonctionnalités de l'option /Zp (Alignement des membres de la structure) du compilateur C++ et l'option Pages de propriétés MIDL : Avancé du compilateur MIDL. | |
SuppressStartupBanner | Supprimer l'affichage de la bannière de démarrage et des messages d'information. | |
ToolKind | Obtient le nom du genre d'outil. | |
toolName | Obtient le nom de l'outil spécifié. | |
ToolPath | Obtient le chemin d'accès à l'outil spécifié. | |
TreatWChar_tAsBuiltInType | Obtient ou définit une valeur indiquant s'il faut considérer wchar_t comme un type intégré.TreatWChar_tAsBuiltInType expose les fonctions de l'option /Zc:wchar_t (wchar_t est un type natif) du compilateur. | |
UndefineAllPreprocessorDefinitions | Obtient ou définit une valeur indiquant s'il faut annuler toutes les valeurs de préprocesseur précédemment définies.UndefineAllPreprocessorDefinitions expose les fonctions de l'option /U, /u (Annuler la définition de symboles) du compilateur. | |
UndefinePreprocessorDefinitions | Obtient ou définit une valeur qui spécifie un ou plusieurs préprocesseurs non définis.UndefinePreprocessorDefinitions expose les fonctionnalités de l'option /U, /u (Annuler la définition de symboles) du compilateur C++ et l'option Pages de propriétés MIDL : Avancé du compilateur MIDL. | |
UseFullPaths | Obtient ou définit une valeur indiquant s'il faut utiliser des chemins d'accès complets. | |
UsePrecompiledHeader | Obtient ou définit une valeur qui active la création ou l'utilisation d'un en-tête précompilé pendant la génération.UsePrecompiledHeader expose les fonctionnalités des options /Yc (Créer un fichier d'en-tête précompilé) et /Yu (Utiliser un fichier d'en-tête précompilé) du compilateur. | |
UseUnicodeResponseFiles | Définit si le compilateur utilise des fichiers réponse Unicode, ou pas. | |
VCProjectEngine | Obtient un pointeur vers le moteur de projet. | |
WarnAsError | Obtient ou définit une valeur indiquant si le compilateur doit traiter tous les avertissements comme des erreurs.WarnAsError expose les fonctionnalités de l'option /w, /Wn, /WX, /Wall, /wln, /wdn, /wen, /won (Niveau d'avertissement) du compilateur C++ et l'option Pages de propriétés MIDL : Général du compilateur MIDL. | |
WarningLevel | Obtient ou définit une valeur qui représente la rigueur avec laquelle le compilateur vérifie les constructions potentiellement suspectes.WarningLevel expose les fonctionnalités de l'option /w, /Wn, /WX, /Wall, /wln, /wdn, /wen, /won (Niveau d'avertissement) du compilateur C++ et l'option /w, /Wn, /WX, /Wall, /wln, /wdn, /wen, /won (Niveau d'avertissement) du compilateur MIDL. | |
WholeProgramOptimization | Obtient ou définit une valeur indiquant s'il faut activer les optimisations entre modules en différant la génération du code pour qu'elle se produise au moment de la liaison.WholeProgramOptimization expose les fonctions de l'option /GL (Optimisation de l'ensemble du programme) du compilateur. | |
XMLDocumentationFileName | Obtient ou définit le nom de fichier de documentation XML. |
Début
Méthodes
Nom | Description | |
---|---|---|
get_PropertyOption | Infrastructure. Réservé à un usage interne Microsoft. |
Début
Notes
Les nouvelles options de compilateur suivantes ont été ajoutées dans Visual Studio 2005:
Les options de compilateur suivantes ont été supprimées dans Visual Studio 2005:
/Op
/G6, /G7, et /GB
Exemples
L'exemple suivant montre comment utiliser les propriétés d'EnablePREfast et AdditionalOptions pour définir le commutateur d'/analyze:WX-. (Les deux propriétés sont obligatoires pour procéder.) La spécification de /analyze:WX- signifie que les avertissements d'analyse du code ne seront pas traités comme des erreurs lorsque vous compilez avec /WX. Pour plus d'informations, consultez /analyze (analyse de code).
Pour exécuter cet exemple, entrez et exécutez cet exemple comme décrit dans Comment : compiler et exécuter les exemples de code du modèle objet Automation. Ensuite, dans la nouvelle instance d'Visual Studio, chargez un projet d'Visual C++ et utiliser le Gestionnaire de compléments pour activer le complément.
' Add reference to Microsoft.VisualStudio.VCProjectEngine.
Imports System
Imports EnvDTE
Imports EnvDTE80
Imports System.Diagnostics
Imports Microsoft.VisualStudio.VCProjectEngine
Imports System.Text
Sub EnablePREfastExample(ByVal dte As DTE2)
Dim prj As VCProject
Dim cfgs, tools As IVCCollection
Dim cfg As VCConfiguration
Dim tool As VCCLCompilerTool
Dim sb As New StringBuilder
prj = CType(dte.Solution.Projects.Item(1).Object, _
Microsoft.VisualStudio.VCProjectEngine.VCProject)
cfgs = CType(prj.Configurations, _
Microsoft.VisualStudio.VCProjectEngine.IVCCollection)
cfg = CType(cfgs.Item(1), _
Microsoft.VisualStudio.VCProjectEngine.VCConfiguration)
tool = CType(cfg.Tools("VCCLCompilerTool"), _
Microsoft.VisualStudio.VCProjectEngine.VCCLCompilerTool)
sb.Length = 0
sb.Append("Current project PREfast setting: " _
& tool.EnablePREfast & Environment.NewLine)
sb.Append("Flag: " & tool.AdditionalOptions)
MsgBox(sb.ToString)
' Toggle PREfast setting.
If Not (tool.EnablePREfast = True) Then
' PREfast is not enabled. Turn it and the WX- flag on.
tool.EnablePREfast = True
tool.AdditionalOptions = "/analyze:WX-"
Else
' Toggle the opposite.
tool.EnablePREfast = False
tool.AdditionalOptions = "/analyze:WX"
End If
sb.Length = 0
sb.Append("New project PREfast setting: " _
& tool.EnablePREfast & Environment.NewLine)
sb.Append("Flag: " & tool.AdditionalOptions)
MsgBox(sb.ToString)
End Sub
// Add references to Microsoft.VisualStudio.VCProjectEngine and
// System.Windows.Forms.
using System;
using Extensibility;
using EnvDTE;
using EnvDTE80;
using Microsoft.VisualStudio.VCProjectEngine;
using System.Text;
using System.Windows.Forms;
public void EnablePREfastExample(DTE2 dte)
{
try
{
VCProject prj;
IVCCollection cfgs, tools;
VCConfiguration cfg;
VCCLCompilerTool tool;
StringBuilder sb = new StringBuilder();
prj = (Microsoft.VisualStudio.VCProjectEngine.VCProject)
dte.Solution.Projects.Item(1).Object;
cfgs =
(Microsoft.VisualStudio.VCProjectEngine.IVCCollection)
prj.Configurations;
cfg =
(Microsoft.VisualStudio.VCProjectEngine.VCConfiguration)
cfgs.Item(1);
tools =
(Microsoft.VisualStudio.VCProjectEngine.IVCCollection)
cfg.Tools;
tool =
(Microsoft.VisualStudio.VCProjectEngine.VCCLCompilerTool)
tools.Item("VCCLCompilerTool");
sb.Length = 0;
sb.Append("Current project PREfast setting: " +
tool.EnablePREfast + Environment.NewLine);
sb.Append("Flag: " + tool.AdditionalOptions);
MessageBox.Show(sb.ToString());
// Toggle PREfast setting.
if (!(tool.EnablePREfast == true))
{
// PREfast is not enabled. Turn it and the WX- flag on.
tool.EnablePREfast = true;
tool.AdditionalOptions = "/analyze:WX-";
}
else
{
// Toggle the opposite.
tool.EnablePREfast = false;
tool.AdditionalOptions = "/analyze:WX";
}
sb.Length = 0;
sb.Append("New project PREfast setting: " +
tool.EnablePREfast + Environment.NewLine);
sb.Append("Flag: " + tool.AdditionalOptions);
MessageBox.Show(sb.ToString());
}
catch (System.Exception errmsg)
{
MessageBox.Show("ERROR! " + errmsg.Message);
}
}
Voir aussi
Référence
Microsoft.VisualStudio.VCProjectEngine, espace de noms