VCCLCompilerTool – rozhraní
VCCLCompilerTool Objekt zpřístupňuje funkce možnosti kompilátoru jazyka C++.Viz Možnosti kompilátoru pro více informací o možnostech kompilátoru.
Obor názvů: Microsoft.VisualStudio.VCProjectEngine
Sestavení: Microsoft.VisualStudio.VCProjectEngine (v Microsoft.VisualStudio.VCProjectEngine.dll)
Syntaxe
'Deklarace
<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
Typ VCCLCompilerTool zveřejňuje následující členy.
Vlastnosti
Název | Popis | |
---|---|---|
AdditionalIncludeDirectories | Získá nebo nastaví jeden nebo více adresářů přidat do cesty začlenění.AdditionalIncludeDirectories zpřístupňuje funkce kompilátoru /I (další adresáře souborů k zahrnutí) možnost kompilátoru MIDL MIDL – stránky vlastností: Obecné možnost a kompilátor prostředků Stránky vlastností prostředků možnost. | |
AdditionalOptions | Získá nebo nastaví možnosti Přidat na konec příkazového řádku bezprostředně před názvy souborů.Je-li možnost není podporována v objektovém modelu. | |
AdditionalUsingDirectories | Získá nebo nastaví adresář, který chcete vyhledávat odkazy na soubory předány #using – direktiva (C++) směrnice.AdditionalUsingDirectories zpřístupňuje funkce kompilátoru /AI (Zadat adresáře metadat) možnost. | |
AssemblerListingLocation | Získá nebo nastaví relativní cesta nebo název souboru výpis ASM.AssemblerListingLocation zpřístupňuje funkce kompilátoru /Fa možnost. | |
AssemblerOutput | Získá nebo nastaví obsah souboru výstupu sestavení jazyk.AssemblerOutput zpřístupňuje funkce kompilátoru /FA, /Fa (soubor seznamu) možnosti. | |
BasicRuntimeChecks | Získá nebo nastaví hodnotu, která označuje, zda chcete provést kontrolu úplné run-time chybová /RTC (kontrola chyb za běhu)), kontrola platnosti rámec zásobníku v době běhu (/RTC (kontrola chyb za běhu)) a zkontrolujte, zda neinicializované proměnné za běhu (/RTC (kontrola chyb za běhu)). | |
BrowseInformation | Určuje úroveň Procházet informace v souboru .bsc.BrowseInformation zpřístupňuje funkce kompilátoru /FR, /Fr (Vytvořit soubor .Sbr) možnosti. | |
BrowseInformationFile | Získá nebo nastaví volitelný název souboru prohlížeče.BrowseInformationFile zpřístupňuje funkce kompilátoru /FR, /Fr (Vytvořit soubor .Sbr) možnosti. | |
BufferSecurityCheck | Získá nebo nastaví hodnotu určující, zda mají být kontrolovány přetečení zásobníku.BufferSecurityCheck zpřístupňuje funkce kompilátoru /GS (kontrola zabezpečení vyrovnávací paměti) možnost. | |
CallingConvention | Získá nebo nastaví výchozí konvencí volání aplikace.CallingConvention zpřístupňuje funkce kompilátoru /Gd, /Gr, /Gv, /Gz (Konvence volání) možnosti. | |
CompileAs | Vybere volbu jazyka pro soubory .c a .cpp kompilace.CompileAs zpřístupňuje funkce kompilátoru /Tc, /Tp, /TC, /TP (zadání typu zdrojového souboru) možnosti. | |
CompileAsManaged | Získá nebo nastaví hodnotu určující možnosti kompilátoru. | |
CompileOnly | Získá nebo nastaví hodnotu, která označuje, zda pro kompilaci bez propojení. | |
DebugInformationFormat | Získá nebo nastaví typ kompilátor generuje informace o ladění.DebugInformationFormat zpřístupňuje funkce kompilátoru /Z7, /Zi, /ZI (formát ladicích informací) možnosti. | |
DefaultCharIsUnsigned | Získá nebo nastaví výchozí typ char nepodepsané.DefaultCharIsUnsigned zpřístupňuje funkce kompilátoru /J (Výchozí znakový typ není podepsán) možnost. | |
Detect64BitPortabilityProblems | Získá nebo nastaví hodnotu, která označuje, zda bude kompilátor vyhledávat otázky přenositelnost 64-bit.Detect64BitPortabilityProblems zpřístupňuje funkce kompilátoru /Wp64 (Zjištěny problémy s 64bitovou přenositelností) možnost. | |
DisableLanguageExtensions | Získá nebo nastaví hodnotu označující, zda potlačit rozšíření jazyka.DisableLanguageExtensions zpřístupňuje funkce kompilátoru /Za, /Ze (Zakázat jazyková rozšíření) možnost. | |
DisableSpecificWarnings | Získá nebo nastaví hodnotu, která zakáže požadovaná čísla upozornění; Vloží čísla v seznamu oddělené středníky.DisableSpecificWarnings zpřístupňuje funkce kompilátoru /w, /Wn, /WX, /Wall, /wln, /wdn, /wen, /won (úroveň upozornění) možnost. | |
EnableEnhancedInstructionSet | Získá nebo nastaví hodnotu, která umožňuje použití pokynů na procesory, které podporují rozšířené instrukční sady, jako jsou například vylepšení SSE a SSE2 IA-32.EnableEnhancedInstructionSet zpřístupňuje funkce kompilátoru /ARCH možnost. | |
EnableFiberSafeOptimizations | Získá nebo nastaví hodnotu, která umožňuje optimalizaci paměti místa při použití vlákna a přístup místního úložného prostoru vlákna.EnableFiberSafeOptimizations zpřístupňuje funkce kompilátoru /GT (Podpora místního optického úložiště se zabezpečenými vlákny) možnost. | |
EnableFunctionLevelLinking | Získá nebo nastaví hodnotu, která umožňuje propojování úroveň funkci.EnableFunctionLevelLinking zpřístupňuje funkce kompilátoru /Gy (povolení propojení na úrovni funkcí) možnost. | |
EnableIntrinsicFunctions | Získá nebo nastaví hodnotu označující, zda chcete použít pro generování kódu rychlejší, ale pravděpodobně větší vnitřní funkce.EnableIntrinsicFunctions zpřístupňuje funkce kompilátoru /Oi (Generovat vnitřní funkce) možnost. | |
EnablePREfast | Získá nebo nastaví, zda je povolena analýza nativní kód. | |
ErrorReporting | Získá nebo nastaví hlášení chyb kompilátoru. | |
ExceptionHandling | Získá nebo nastaví hodnoty použité pro volání destruktorů pro automatické objekty při zásobníku unwind, způsobené výjimky.ExceptionHandling zpřístupňuje funkce kompilátoru /EH (model zpracování výjimek) možnost. | |
ExecutionBucket | Infrastruktura. Microsoft pouze pro vnitřní potřebu. | |
ExpandAttributedSource | Získá nebo nastaví hodnotu označující, zda chcete vytvořit seznam souborů s rozšířené atributy, které jsou vkládány do zdrojového souboru.ExpandAttributedSource zpřístupňuje funkce kompilátoru /Fx (sloučení vloženého kódu) možnost. | |
FavorSizeOrSpeed | Získá nebo nastaví hodnotu označující, zda upřednostnit rychlost velikosti nebo kód kód.FavorSizeOrSpeed zpřístupňuje funkce kompilátoru /Os, /Ot (Upřednostnit malý kód, upřednostnit rychlý kód) možnosti. | |
FloatingPointExceptions | Nastaví nebo získá zda plovoucí desetinnou čárkou je povoleno zpracování výjimek definovaných uživatelem. | |
floatingPointModel | Nastaví nebo získá plovoucí bod modelu. | |
ForceConformanceInForLoopScope | Získá nebo nastaví hodnotu, která označuje, zda chcete-li vynutit kompilátoru, aby v souladu s místním rozsahem v pro smyčka.ForceConformanceInForLoopScope zpřístupňuje funkce kompilátoru /Zc:forScope (Vynutit dodržování standardu pro obor cyklu for) možnost. | |
ForcedIncludeFiles | Získá nebo nastaví hodnotu, která určuje jednu nebo více povinně obsahovat soubory.ForcedIncludeFiles zpřístupňuje funkce kompilátoru /FI (Zahrnutý soubor s povinným názvem) možnost. | |
ForcedUsingFiles | Vynutí použití názvu souboru, jako kdyby měl byl předán #using – direktiva (C++) směrnice.ForcedUsingFiles zpřístupňuje funkce kompilátoru /FU (soubor s vynuceným názvem #using) možnost. | |
FullIncludePath | Získá seznam všech adresářů, které jsou zahrnuty v sestavení; zřetězení adresářů zadaný s parametrem /I a adresářů určených v VC++ Directories dialogové okno.Makra v těchto adresářích budou hodnoceny také. | |
GeneratePreprocessedFile | Získá nebo sadu předzpracování možnost pro tuto konfiguraci.GeneratePreprocessedFile zpřístupňuje funkce kompilátoru /EP (předběžné zpracování do direktiv bez příkazů #line) a /P (předběžné zpracování souboru) možnosti. | |
GenerateXMLDocumentationFiles | Nastaví nebo získá zda generovat soubory dokumentace jazyka XML. | |
IgnoreStandardIncludePath | Získá nebo nastaví hodnotu, která označuje, zda se má ignorovat standardní cestu.IgnoreStandardIncludePath zpřístupňuje funkce kompilátoru /X (ignorování standardních cest zahrnutí) možnost kompilátoru MIDL MIDL – stránky vlastností: Obecné možnost a kompilátor prostředků Stránky vlastností prostředků možnost. | |
InlineFunctionExpansion | Získá nebo nastaví úroveň vložené funkce rozšíření pro sestavení.InlineFunctionExpansion zpřístupňuje funkce kompilátoru /Ob (rozbalení vložené funkce) možnosti. | |
KeepComments | Získá nebo nastaví hodnotu označující, zda potlačit pruhu komentář ze zdrojového kódu.KeepComments zpřístupňuje funkce kompilátoru /C (Zachovat komentáře při předběžném zpracování) možnost. | |
MinimalRebuild | Získá nebo nastaví hodnotu indicting, zda chcete zjistit změny definice třídy C++ a znovu zkompilujte ovlivněných zdrojových souborů.MinimalRebuild zpřístupňuje funkce kompilátoru /Gm (Povolit minimální opětovné sestavení) možnost. | |
ObjectFile | Získá nebo nastaví název výchozí název souboru objekt přepsat.ObjectFile zpřístupňuje funkce kompilátoru /Fo (název souboru objektů) možnost. | |
OmitDefaultLibName | Získá nebo nastaví, zda je vynechán název výchozí knihovny. | |
OmitFramePointers | Získá nebo nastaví hodnotu označující, zda potlačit framepointers.OmitFramePointers zpřístupňuje funkce kompilátoru /Oy (vynechání ukazatele na rámec) možnost. | |
OpenMP | Získá nebo nastavit, zda je povoleno OpenMP. | |
Optimization | Získá nebo nastaví možnosti pro optimalizaci kódu.Optimization zpřístupňuje funkce kompilátoru /Od (Zakázat (ladění)), /O1, /O2 (minimální velikost, maximální rychlost), a /Ox (úplná optimalizace) možnosti. | |
PrecompiledHeaderFile | Získá nebo nastaví cestu nebo název souboru generovaný předkompilované hlavičky.PrecompiledHeaderFile zpřístupňuje funkce kompilátoru /Fp (název souboru .Pch) možnost. | |
PrecompiledHeaderThrough | Získá nebo nastaví název souboru hlaviček, které lze použít při vytváření nebo použití předkompilovaného souboru hlaviček.PrecompiledHeaderThrough zpřístupňuje funkce kompilátoru /Yc (Vytvořit předkompilovaný hlavičkový soubor), a /Yu (Použít předkompilovaný hlavičkový soubor) možnosti. | |
PreprocessorDefinitions | Získá nebo nastaví jeden nebo více preprocesor definuje.PreprocessorDefinitions zpřístupňuje funkce kompilátoru /D (definice preprocesoru) možnost kompilátoru MIDL MIDL – stránky vlastností: Obecné možnost a kompilátor prostředků Stránky vlastností prostředků možnost. | |
ProgramDataBaseFileName | Získá nebo nastaví název pro soubor .pdb generovány kompilátoru a základní název souboru IDB požadované generovány kompilátoru.ProgramDataBaseFileName zpřístupňuje funkce kompilátoru /Fd (Název souboru databáze programu) možnost. | |
RuntimeLibrary | Získá nebo nastaví knihovna run-time pro propojení.RuntimeLibrary zpřístupňuje funkce kompilátoru /MD, /MT, /LD (Použít běhovou knihovnu) možnosti. | |
RuntimeTypeInfo | Získá nebo nastaví hodnotu označující, zda přidat kód pro kontrolu typů objektů C++ za běhu (informace o typu run-time).RuntimeTypeInfo zpřístupňuje funkce kompilátoru /GR (Povolit informace běhového typu) možnost. | |
ShowIncludes | Získá nebo nastaví hodnotu, která označuje, zda pro vytvoření seznamu zahrnout soubory s výstup kompilátoru.ShowIncludes zpřístupňuje funkce kompilátoru /showIncludes (seznam vložených souborů) možnost. | |
SmallerTypeCheck | Získá nebo nastaví hodnotu, která označuje, zda povolit kontrolu za účelem převodu na menší typy.SmallerTypeCheck zpřístupňuje funkce kompilátoru /RTC (kontrola chyb za běhu) možnost. | |
StringPooling | Získá nebo nastaví hodnotu, která označuje, zda povolit čtení řetězce sdružování pro generování menší zkompilovaného kódu.StringPooling zpřístupňuje funkce kompilátoru /GF (odstranění duplicitních řetězců) možnost. | |
StructMemberAlignment | Určuje 1-, 2-, 4-, 8 nebo 16 bajtů hranice pro struct member alignment.StructMemberAlignment zpřístupňuje funkce kompilátoru C++ /Zp (zarovnání členů struktury) možnost a MIDL kompilátoru MIDL – stránky vlastností: Upřesnit možnost. | |
SuppressStartupBanner | Potlačí zobrazování úvodního nápisu a informačních zpráv. | |
ToolKind | Získá název druhu nástroje. | |
toolName | Získá název určený nástroj. | |
ToolPath | Získá cestu pro určený nástroj. | |
TreatWChar_tAsBuiltInType | Získá nebo nastaví hodnotu označující, zda se má považovat za vestavěný typ wchar_t.TreatWChar_tAsBuiltInType zpřístupňuje funkce kompilátoru /Zc:wchar_t (wchar_t je nativní typ) možnost. | |
UndefineAllPreprocessorDefinitions | Získá nebo nastaví hodnotu označující, zda všechny dříve definované hodnoty preprocesoru Nedefinování definičních souborů.UndefineAllPreprocessorDefinitions zpřístupňuje funkce kompilátoru /U, /u (nedefinované symboly) možnost. | |
UndefinePreprocessorDefinitions | Získá nebo nastaví hodnotu, která určuje, zda že jeden nebo více preprocesoru undefines.UndefinePreprocessorDefinitions zpřístupňuje funkce kompilátoru C++ /U, /u (nedefinované symboly) možnost a MIDL kompilátoru MIDL – stránky vlastností: Upřesnit možnost. | |
UseFullPaths | Získá nebo nastaví, zda chcete použít úplné cesty. | |
UsePrecompiledHeader | Získá nebo nastaví hodnotu, která umožňuje vytváření nebo použití předkompilovaných hlaviček během sestavení.UsePrecompiledHeader zpřístupňuje funkce kompilátoru /Yc (Vytvořit předkompilovaný hlavičkový soubor) a /Yu (Použít předkompilovaný hlavičkový soubor) možnosti. | |
UseUnicodeResponseFiles | Určuje, zda kompilátoru používá Unicode soubory odpovědí, nebo Ne. | |
VCProjectEngine | Získá ukazatel na modul projektu. | |
WarnAsError | Získá nebo nastaví hodnotu označující, zda chcete povolit kompilátor pro zacházení se všemi upozorněními jako s chybami.WarnAsError zpřístupňuje funkce kompilátoru C++ /w, /Wn, /WX, /Wall, /wln, /wdn, /wen, /won (úroveň upozornění) možnost a MIDL kompilátoru MIDL – stránky vlastností: Obecné možnost. | |
WarningLevel | Získá nebo nastaví hodnotu, která představuje, jak přísně kompilátor zjistí potenciálně podezřelý konstrukce.WarningLevel zpřístupňuje funkce kompilátoru C++ /w, /Wn, /WX, /Wall, /wln, /wdn, /wen, /won (úroveň upozornění) možnost a MIDL kompilátoru /w, /Wn, /WX, /Wall, /wln, /wdn, /wen, /won (úroveň upozornění) možnost. | |
WholeProgramOptimization | Získá nebo nastaví hodnotu určující, zda povolit optimalizace modulu mezi zpožděním generování kódu propojení čas.WholeProgramOptimization zpřístupňuje funkce kompilátoru /GL (celková optimalizace programu) možnost. | |
XMLDocumentationFileName | Získá nebo nastaví název souboru XML dokumentace. |
Nahoru
Metody
Název | Popis | |
---|---|---|
get_PropertyOption | Infrastruktura. Microsoft pouze pro vnitřní potřebu. |
Nahoru
Poznámky
Byly přidány následující nové možnosti kompilátoru Visual Studio 2005:
Následující možnosti kompilátoru, které byly odebrány v Visual Studio 2005:
/OP
/ G6, /G7 a /GB
Příklady
Následující příklad ukazuje, jak použít EnablePREfast a AdditionalOptions vlastnosti a nastavte /analyze:WX- přepnout. (Obě vlastnosti nutné provést.) Určení /analyze:WX- znamená, že kód analýzy upozornění považovány za chyby při kompilaci s /WX.Další informace naleznete v tématu /analyze (Analýza kódu).
Chcete-li spustit tento příklad, zadejte a spustit tento příklad, jak je uvedeno v Postupy: Kompilace a spuštění příkladů kódu objektu automatizace.Potom v nové instanci aplikace Visual Studio, načíst Visual C++ projektu a aktivovat doplněk pomocí Správce doplňků.
' 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);
}
}
Viz také
Referenční dokumentace
Microsoft.VisualStudio.VCProjectEngine – obor názvů