Interfejs VCCLCompilerTool
VCCLCompilerTool Obiektu opisuje funkcjonowanie opcje kompilatora C++.Zobacz Opcje kompilatora uzyskać więcej informacji dotyczących opcji kompilatora.
Przestrzeń nazw: Microsoft.VisualStudio.VCProjectEngine
Zestaw: Microsoft.VisualStudio.VCProjectEngine (w Microsoft.VisualStudio.VCProjectEngine.dll)
Składnia
'Deklaracja
<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 uwidacznia następujące elementy członkowskie.
Właściwości
Nazwa | Opis | |
---|---|---|
AdditionalIncludeDirectories | Pobiera lub ustawia jeden lub więcej katalogów, aby dodać do ścieżki include.AdditionalIncludeDirectories udostępnia funkcję kompilatora /I (Dodatkowe katalogi dołączenia) opcji, kompilator MIDL Strony właściwości MIDL: ogólne opcji i kompilator zasobów Strony właściwości zasobów opcji. | |
AdditionalOptions | Pobiera lub ustawia opcje, aby dodać na końcu wiersza polecenia bezpośrednio przed nazwy plików.Przykładem jest, jeśli opcja nie jest obsługiwana w modelu obiektów. | |
AdditionalUsingDirectories | Pobiera lub ustawia katalog wyszukiwania do rozwiązania odwołuje się plik przekazany do #using — dyrektywa (C++) dyrektywy.AdditionalUsingDirectories udostępnia funkcję kompilatora /AI (Określ katalogi metadanych) opcji. | |
AssemblerListingLocation | Pobiera lub ustawia ścieżkę względną i/lub nazwę pliku ASM aukcji.AssemblerListingLocation udostępnia funkcję kompilatora /Fa opcji. | |
AssemblerOutput | Pobiera lub ustawia zawartość pliku wyjściowego asemblera.AssemblerOutput udostępnia funkcję kompilatora /FA, /Fa (Umieszczanie pliku na liście) opcje. | |
BasicRuntimeChecks | Pobiera lub ustawia wartość wskazująca, czy do sprawdzania błędów run time /RTC (Sprawdzanie błędów czasu wykonywania)), sprawdzić ważność ramek stosu w czasie wykonywania (/RTC (Sprawdzanie błędów czasu wykonywania)) i wyszukaj niezainicjowanych zmiennych w czasie wykonywania (/RTC (Sprawdzanie błędów czasu wykonywania)). | |
BrowseInformation | Określa poziom przeglądać informacje w pliku .bsc.BrowseInformation udostępnia funkcję kompilatora /FR, /Fr (Utwórz plik .Sbr) opcje. | |
BrowseInformationFile | Pobiera lub ustawia opcjonalna nazwa pliku informacji przeglądarki.BrowseInformationFile udostępnia funkcję kompilatora /FR, /Fr (Utwórz plik .Sbr) opcje. | |
BufferSecurityCheck | Pobiera lub ustawia wartość wskazującą, czy Wyszukaj przepełnienia bufora.BufferSecurityCheck udostępnia funkcję kompilatora /GS (Sprawdzanie zabezpieczeń bufora) opcji. | |
CallingConvention | Pobiera lub ustawia domyślne konwencji wywoływania aplikacji.CallingConvention udostępnia funkcję kompilatora /Gd, /Gr, /Gv, /Gz (Konwencja wywoływania) opcje. | |
CompileAs | Wybieranie kompilacji opcji języka dla plików .c i .cpp.CompileAs udostępnia funkcję kompilatora /Tc, /Tp, /TC, /TP (Określ typ pliku źródłowego) opcje. | |
CompileAsManaged | Pobiera lub ustawia wartość wskazującą, opcje kompilatora. | |
CompileOnly | Pobiera lub ustawia wartość wskazującą, czy skompilować bez jej przyłączania. | |
DebugInformationFormat | Pobiera lub ustawia typ informacji debugowania generowanych przez kompilator.DebugInformationFormat udostępnia funkcję kompilatora /Z7, /Zi, /ZI (Format informacji o debugowaniu) opcje. | |
DefaultCharIsUnsigned | Pobiera lub ustawia domyślny typ char bez znaku.DefaultCharIsUnsigned udostępnia funkcję kompilatora /J (Domyślny typ char nie jest podpisany) opcji. | |
Detect64BitPortabilityProblems | Pobiera lub ustawia wartość wskazującą, czy kompilator będzie sprawdzał kwestie przenoszenia 64-bitowych.Detect64BitPortabilityProblems udostępnia funkcję kompilatora /Wp64 (Wykrywaj problemy związane z przenośnością w programowaniu 64-bitowym) opcji. | |
DisableLanguageExtensions | Pobiera lub ustawia wartość wskazującą, czy należy wyłączyć rozszerzenia języka.DisableLanguageExtensions udostępnia funkcję kompilatora /Za, /Ze (Wyłącz rozszerzenia językowe) opcji. | |
DisableSpecificWarnings | Pobiera lub ustawia wartość, która wyłącza żądane numery ostrzeżenia; numery umieszcza na liście średnikami.DisableSpecificWarnings udostępnia funkcję kompilatora /w, /Wn, /WX, /Wall, /wln, /wdn, /wen, /won (Poziom ostrzeżenia) opcji. | |
EnableEnhancedInstructionSet | Pobiera lub ustawia wartość, która umożliwia korzystanie z instrukcji zawartych na procesorach, które obsługują zestawów instrukcji rozszerzonych, takich jak ulepszenia SSE i SSE2 IA-32.EnableEnhancedInstructionSet udostępnia funkcję kompilatora /ARCH opcji. | |
EnableFiberSafeOptimizations | Pobiera lub ustawia wartość, która umożliwia optymalizację przestrzeni pamięci podczas korzystania z włókien i dostępu lokalnego magazynu wątków.EnableFiberSafeOptimizations udostępnia funkcję kompilatora /GT (Obsługa bezpieczeństwa włókien magazynu wątków lokalnych) opcji. | |
EnableFunctionLevelLinking | Pobiera lub ustawia wartość, która umożliwia łączenie poziom funkcji.EnableFunctionLevelLinking udostępnia funkcję kompilatora /Gy (Włączenie łączenia na poziomie funkcji) opcji. | |
EnableIntrinsicFunctions | Pobiera lub ustawia wartość wskazującą, czy ma być używany do generowania kodu szybciej, ale prawdopodobnie większa, funkcje wewnętrzne.EnableIntrinsicFunctions udostępnia funkcję kompilatora /Oi (Generuj funkcje wewnętrzne) opcji. | |
EnablePREfast | Pobiera lub ustawia, czy włączono analizy kodu macierzystego. | |
ErrorReporting | Pobiera lub ustawia raportowanie błędów kompilatora. | |
ExceptionHandling | Pobiera lub ustawia wartość używana dla wywołań destruktory dla obiektów automatyczne podczas odkręcanie stosu, spowodowane przez wyrzucony wyjątek.ExceptionHandling udostępnia funkcję kompilatora /EH (Model obsługi wyjątku) opcji. | |
ExecutionBucket | Infrastruktura. Microsoft tylko do użytku wewnętrznego. | |
ExpandAttributedSource | Pobiera lub ustawia wartość wskazującą, czy należy utworzyć plik aukcji z rozwiniętym atrybutów do pliku źródłowego.ExpandAttributedSource udostępnia funkcję kompilatora /Fx (Scalaj wprowadzony kod) opcji. | |
FavorSizeOrSpeed | Pobiera lub ustawia wartość wskazującą, czy należy preferować kodu wielkości lub kod szybkość.FavorSizeOrSpeed udostępnia funkcję kompilatora /Os, /Ot (Preferuj mały kod, Preferuj szybki kod) opcje. | |
FloatingPointExceptions | Ustawia lub pobiera czy zmiennoprzecinkowych jest włączona obsługa wyjątków zdefiniowane przez użytkownika. | |
floatingPointModel | Ustawia lub pobiera unoszące się na powierzchni modelu punktu. | |
ForceConformanceInForLoopScope | Pobiera lub ustawia wartość wskazującą, czy należy wymusić na kompilatorze odpowiadają zakres lokalny w pętli For.ForceConformanceInForLoopScope udostępnia funkcję kompilatora /Zc:forScope (Wymuszaj zgodność w zakresie pętli For) opcji. | |
ForcedIncludeFiles | Pobiera lub ustawia wartość, która określa jeden lub więcej zmuszony dołączyć pliki.ForcedIncludeFiles udostępnia funkcję kompilatora /FI (Nazwa pliku wymuszonego dołączenia) opcji. | |
ForcedUsingFiles | Wymusza użycie nazwy pliku, jak gdyby miał został przekazany do #using — dyrektywa (C++) dyrektywy.ForcedUsingFiles udostępnia funkcję kompilatora /FU (Nazwij wymuszone pliki dyrektywy #using) opcji. | |
FullIncludePath | Pobiera listę wszystkich katalogów zawarte w kompilacji; łączenie za pomocą/i określić katalogi i katalogach, określone w VC++ Directories okno dialogowe.Ocenia się również makr w tych katalogach. | |
GeneratePreprocessedFile | Pobiera lub zestaw opcji preprocesora dla tej konfiguracji.GeneratePreprocessedFile udostępnia funkcję kompilatora /EP (Wstępnie przetwórz do stdout bez dyrektyw #line) i /P (Przetwarzaj wstępnie do pliku) opcje. | |
GenerateXMLDocumentationFiles | Ustawia lub pobiera czy generować pliki dokumentacji XML. | |
IgnoreStandardIncludePath | Pobiera lub ustawia wartość wskazującą, czy ignorować standard Podaj ścieżkę.IgnoreStandardIncludePath udostępnia funkcję kompilatora /X (Ignoruj standardowe ścieżki dołączanych plików) opcji, kompilator MIDL Strony właściwości MIDL: ogólne opcji i kompilator zasobów Strony właściwości zasobów opcji. | |
InlineFunctionExpansion | Pobiera lub ustawia poziom wbudowanej funkcji rozszerzeń dla kompilacji.InlineFunctionExpansion udostępnia funkcję kompilatora /Ob (Rozszerzenie funkcji wbudowanej) opcje. | |
KeepComments | Pobiera lub ustawia wartość wskazującą, czy należy wyłączyć pasek komentarz z kodu źródłowego.KeepComments udostępnia funkcję kompilatora /C (Zachowaj komentarze podczas przetwarzania wstępnego) opcji. | |
MinimalRebuild | Pobiera lub ustawia wartość oskarżając czy wykrywania zmian definicji klas C++ i ponownie skompilować plików źródłowych usterce.MinimalRebuild udostępnia funkcję kompilatora /Gm (Włącz minimalną ponowną kompilację) opcji. | |
ObjectFile | Pobiera lub ustawia nazwę, aby zastąpić domyślną nazwę pliku obiektu.ObjectFile udostępnia funkcję kompilatora /Fo (Nazwa pliku obiektu) opcji. | |
OmitDefaultLibName | Pobiera lub ustawia, czy domyślna nazwa biblioteki zostanie pominięty. | |
OmitFramePointers | Pobiera lub ustawia wartość wskazującą, czy należy wyłączyć framepointers.OmitFramePointers udostępnia funkcję kompilatora /Oy (Pominięcie wskaźnika ramki) opcji. | |
OpenMP | Pobiera lub określić, czy OpenMP jest włączony. | |
Optimization | Pobiera lub ustawia opcje optymalizacji kodu.Optimization udostępnia funkcję kompilatora /Od (Wyłącz (Debuguj)), /O1, /O2 (Minimalizuj rozmiar, maksymalizuj szybkość), i /Ox (Pełna optymalizacja) opcje. | |
PrecompiledHeaderFile | Pobiera lub ustawia ścieżkę i/lub nazwę pliku wygenerowanego nagłówka wstępnie skompilowana.PrecompiledHeaderFile udostępnia funkcję kompilatora /Fp (Nazwa pliku .Pch) opcji. | |
PrecompiledHeaderThrough | Pobiera lub ustawia nazwę pliku nagłówka, aby używać podczas tworzenia lub przy użyciu wstępnie skompilowany plik nagłówka.PrecompiledHeaderThrough udostępnia funkcję kompilatora /Yc (Utwórz prekompilowany plik nagłówka), i /Yu (Korzystaj z prekompilowanego pliku nagłówka) opcje. | |
PreprocessorDefinitions | Pobiera lub ustawia definiuje jeden lub więcej preprocesora.PreprocessorDefinitions udostępnia funkcję kompilatora /D (Definicje preprocesora) opcji, kompilator MIDL Strony właściwości MIDL: ogólne opcji i kompilator zasobów Strony właściwości zasobów opcji. | |
ProgramDataBaseFileName | Pobiera lub ustawia nazwę pliku .pdb generowanych przez kompilator i nazwa podstawowa pliku wymaganego .idb generowanych przez kompilator.ProgramDataBaseFileName udostępnia funkcję kompilatora /Fd (Nazwa pliku bazy danych programu) opcji. | |
RuntimeLibrary | Pobiera lub ustawia biblioteka uruchomieniowa łączenia.RuntimeLibrary udostępnia funkcję kompilatora /MD, /MT, /LD (Korzystaj z bibliotek wykonawczych) opcje. | |
RuntimeTypeInfo | Pobiera lub ustawia wartość wskazującą, czy chcesz dodać kod sprawdzania typów obiektów C++ w czasie wykonywania (informacje dotyczące typu run-time).RuntimeTypeInfo udostępnia funkcję kompilatora /GR (Włącz informacje typu Run-Time) opcji. | |
ShowIncludes | Pobiera lub ustawia wartość wskazującą, czy generować listy dołączania plików o dane wyjściowe kompilatora.ShowIncludes udostępnia funkcję kompilatora /showIncludes (Wymień pliki dołączane) opcji. | |
SmallerTypeCheck | Pobiera lub ustawia wartość wskazującą, czy włączyć sprawdzanie konwersji na mniejszych typów.SmallerTypeCheck udostępnia funkcję kompilatora /RTC (Sprawdzanie błędów czasu wykonywania) opcji. | |
StringPooling | Pobiera lub ustawia wartość wskazującą, czy aby włączyć tylko do odczytu string buforowanie dla mniejszych generowania skomplikowanego kodu.StringPooling udostępnia funkcję kompilatora /GF (Eliminowanie ciągów zduplikowanych) opcji. | |
StructMemberAlignment | Określa 1-, 2, 4-, 8- lub 16-bajtowy granice struct Członkowskich wyrównania.StructMemberAlignment udostępnia funkcję kompilatora C++ /Zp (Wyrównanie członka struktury) opcji i kompilator MIDL Strony właściwości MIDL: zaawansowane opcji. | |
SuppressStartupBanner | Pomija wyświetlanie komunikatów uruchomienia transparent i informacji. | |
ToolKind | Pobiera nazwę rodzaju narzędzie. | |
toolName | Pobiera nazwę określonego narzędzia. | |
ToolPath | Pobiera ścieżkę do określonego narzędzia. | |
TreatWChar_tAsBuiltInType | Pobiera lub ustawia wartość wskazującą, czy należy traktować jako wbudowany typ wchar_t.TreatWChar_tAsBuiltInType udostępnia funkcję kompilatora /Zc:wchar_t (wchar_t jest typem natywnym) opcji. | |
UndefineAllPreprocessorDefinitions | Pobiera lub ustawia wartość wskazującą, czy definicję wszystkie uprzednio zdefiniowane wartości preprocesora.UndefineAllPreprocessorDefinitions udostępnia funkcję kompilatora /U, /u (Usuń definicje symboli) opcji. | |
UndefinePreprocessorDefinitions | Pobiera lub ustawia wartość, która określa, że undefines jeden lub więcej preprocesora.UndefinePreprocessorDefinitions udostępnia funkcję kompilatora C++ /U, /u (Usuń definicje symboli) opcji i kompilator MIDL Strony właściwości MIDL: zaawansowane opcji. | |
UseFullPaths | Pobiera lub ustawia, czy użyć pełnej ścieżki. | |
UsePrecompiledHeader | Pobiera lub ustawia wartość, która umożliwia tworzenie i stosowanie wstępnie skompilowanym nagłówka podczas kompilacji.UsePrecompiledHeader udostępnia funkcję kompilatora /Yc (Utwórz prekompilowany plik nagłówka) i /Yu (Korzystaj z prekompilowanego pliku nagłówka) opcje. | |
UseUnicodeResponseFiles | Określa, czy kompilator używa plików odpowiedzi Unicode, czy nie. | |
VCProjectEngine | Pobiera wskaźnik do aparatu projektu. | |
WarnAsError | Pobiera lub ustawia wartość wskazującą, czy należy włączyć kompilatorowi traktuje wszystkie ostrzeżenia jako błędy.WarnAsError udostępnia funkcję kompilatora C++ /w, /Wn, /WX, /Wall, /wln, /wdn, /wen, /won (Poziom ostrzeżenia) opcji i kompilator MIDL Strony właściwości MIDL: ogólne opcji. | |
WarningLevel | Pobiera lub ustawia wartość, która reprezentuje jak ściśle kompilator sprawdza, czy potencjalnie podejrzanych konstrukcji.WarningLevel udostępnia funkcję kompilatora C++ /w, /Wn, /WX, /Wall, /wln, /wdn, /wen, /won (Poziom ostrzeżenia) opcji i kompilator MIDL /w, /Wn, /WX, /Wall, /wln, /wdn, /wen, /won (Poziom ostrzeżenia) opcji. | |
WholeProgramOptimization | Pobiera lub ustawia wartość wskazującą, czy należy włączyć optymalizację cross moduł poprzez opóźnianie generowania kodu, aby połączyć razem.WholeProgramOptimization udostępnia funkcję kompilatora /GL (Optymalizacja całego programu) opcji. | |
XMLDocumentationFileName | Pobiera lub ustawia nazwę pliku dokumentacji XML. |
Początek
Metody
Nazwa | Opis | |
---|---|---|
get_PropertyOption | Infrastruktura. Microsoft tylko do użytku wewnętrznego. |
Początek
Uwagi
Dodano następujące nowe opcje kompilatora w Visual Studio 2005:
Następujące opcje kompilatora zostały usunięte w Visual Studio 2005:
/OP
/ G6, /G7 i /GB
Przykłady
Poniższy przykład pokazuje sposób użycia EnablePREfast i AdditionalOptions właściwości, aby ustawić /analyze:WX- przełączanie. (Obie właściwości są wymagane w tym celu). Określanie /analyze:WX- oznacza, że kod ostrzeżenia analizy nie będzie traktowane jako błędy, podczas kompilacji z /WX.Aby uzyskać więcej informacji, zobacz /analyze (analiza kodu).
Aby uruchomić ten przykład, należy wprowadzić i uruchomić ten przykład, jak wskazano w Porady: kompilowanie i uruchamianie kodu modelu obiektów automatyzacji — przykłady.Następnie w nowej instancji Visual Studio, załadować Visual C++ projektu a aktywacja dodatek za pomocą Menedżera dodatków.
' 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);
}
}
Zobacz też
Informacje
Przestrzeń nazw Microsoft.VisualStudio.VCProjectEngine