Udostępnij za pośrednictwem


Interfejs VCCLCompilerTool

VCCLCompilerTool Obiekt udostępnia funkcje opcje kompilatora C++.Zobacz Opcje kompilatora Aby uzyskać więcej informacji o opcjach kompilatora.

Przestrzeń nazw:  Microsoft.VisualStudio.VCProjectEngine
Zestaw:  Microsoft.VisualStudio.VCProjectEngine (w Microsoft.VisualStudio.VCProjectEngine.dll)

Składnia

'Deklaracja
<GuidAttribute("5D579FF0-3839-4B36-9F3E-4BA2F790525A")> _
Public Interface VCCLCompilerTool
[GuidAttribute("5D579FF0-3839-4B36-9F3E-4BA2F790525A")]
public interface VCCLCompilerTool
[GuidAttribute(L"5D579FF0-3839-4B36-9F3E-4BA2F790525A")]
public interface class VCCLCompilerTool
[<GuidAttribute("5D579FF0-3839-4B36-9F3E-4BA2F790525A")>]
type VCCLCompilerTool =  interface end
public interface VCCLCompilerTool

Typ VCCLCompilerTool uwidacznia następujące elementy członkowskie.

Właściwości

  Nazwa Opis
Właściwość publiczna AdditionalIncludeDirectories Zwraca lub ustawia jeden lub więcej katalogów, aby dodać do ścieżki include.AdditionalIncludeDirectories udostępnia funkcje kompilatora /I (dodatkowe obejmują katalogi) opcji kompilator MIDL Strony właściwości MIDL: Ogólne opcji i kompilatora zasobów Strony właściwości zasobów opcji.
Właściwość publiczna AdditionalOptions Zwraca lub ustawia opcje, aby dodać na końcu wiersza polecenia bezpośrednio przed nazwy pliku.Przykładem jest, jeśli opcja nie jest obsługiwana w modelu obiektów.
Właściwość publiczna AdditionalUsingDirectories Pobiera lub ustawia katalog wyszukiwania, aby rozwiązać odwołuje się plik przekazany do # za pomocą dyrektywy (C++) dyrektywy.AdditionalUsingDirectories Opisuje funkcje kompilatora /AI (określić katalogi metadanych) opcji.
Właściwość publiczna AssemblerListingLocation Pobiera lub ustawia ścieżkę względną i/lub nazwę pliku ASM aukcji.AssemblerListingLocation Opisuje funkcje kompilatora /Fa opcji.
Właściwość publiczna AssemblerOutput Zwraca lub ustawia zawartość pliku wyjściowego asemblera.AssemblerOutput Opisuje funkcje kompilatora / FA, /Fa (plik aukcji) opcje.
Właściwość publiczna BasicRuntimeChecks Zwraca lub ustawia wartość, aby wskazać, czy ma być przeprowadzane kontrole pełne run-time error / RTC (błąd w czasie wykonywania kontroli)), sprawdzanie ważności ramek stosu w czasie wykonywania (/ RTC (błąd w czasie wykonywania kontroli)) i wyszukaj niezainicjowanych zmiennych w czasie wykonywania (/ RTC (błąd w czasie wykonywania kontroli)).
Właściwość publiczna BrowseInformation Określa poziom przeglądania informacji w pliku .bsc.BrowseInformation Opisuje funkcje kompilatora / FR, /Fr (Tworzenie.Plik SBR) opcje.
Właściwość publiczna BrowseInformationFile Zwraca lub ustawia opcjonalna nazwa pliku informacji przeglądarki.BrowseInformationFile Opisuje funkcje kompilatora / FR, /Fr (Tworzenie.Plik SBR) opcje.
Właściwość publiczna BufferSecurityCheck Pobiera lub ustawia wartość określającą, czy sprawdzić, czy przepełnienia bufora.BufferSecurityCheck Opisuje funkcje kompilatora / GS (kontrola zabezpieczeń buforu) opcji.
Właściwość publiczna CallingConvention Pobiera lub ustawia domyślne konwencji wywoływania aplikacji.CallingConvention Opisuje funkcje kompilatora / Gd, się przełączników /Gr, /Gz (Konwencja wywołania) opcje.
Właściwość publiczna CompileAs Wybiera skompilować opcji języka dla plików .c i .cpp.CompileAs Opisuje funkcje kompilatora / Tc, /TP /Tp, /TC, (Określ typ pliku źródłowego) opcje.
Właściwość publiczna CompileAsManaged Pobiera lub ustawia wartość określającą, opcje kompilatora.
Właściwość publiczna CompileOnly Pobiera lub ustawia wartość określającą, czy skompilować bez łączenia.
Właściwość publiczna DebugInformationFormat Pobiera lub ustawia typ informacji debugowania generowanych przez kompilator.DebugInformationFormat Opisuje funkcje kompilatora / Z7, /Zi, /ZI (Format informacji debugowania) opcje.
Właściwość publiczna DefaultCharIsUnsigned Pobiera lub ustawia domyślny typ char niepodpisany.DefaultCharIsUnsigned Opisuje funkcje kompilatora /J (domyślną jest typ unsigned char) opcji.
Właściwość publiczna Detect64BitPortabilityProblems Pobiera lub ustawia wartość określającą, czy kompilator będzie sprawdzał zagadnień przenośności 64-bitowych.Detect64BitPortabilityProblems Opisuje funkcje kompilatora / Wp64 (wykrywanie problemów przenośności 64-bitowe) opcji.
Właściwość publiczna DisableLanguageExtensions Pobiera lub ustawia wartość określającą, czy pomijać rozszerzeń języka.DisableLanguageExtensions Opisuje funkcje kompilatora / Za, /Ze (język wyłączyć rozszerzenia) opcji.
Właściwość publiczna DisableSpecificWarnings Zwraca lub ustawia wartość, która wyłącza żądanej liczby ostrzeżenia; umieszcza numery na liście rozdzielanych średnikami.DisableSpecificWarnings Opisuje funkcje kompilatora /w, /Wn, /WX, /Wall, /wln, /wdn, /wen, / zdobył (poziom ostrzeżeń) opcji.
Właściwość publiczna EnableEnhancedInstructionSet Zwraca lub ustawia wartość, która umożliwia korzystanie z instrukcji zawartych na procesory, które obsługują zestawów instrukcji rozszerzonych, takich jak ulepszenia SSE i SSE2 IA-32.EnableEnhancedInstructionSet Opisuje funkcje kompilatora /ARCH opcji.
Właściwość publiczna EnableFiberSafeOptimizations Zwraca lub ustawia wartość, która umożliwia optymalizację przestrzeni pamięci podczas korzystania z włókna i dostępu lokalnego magazynu wątków.EnableFiberSafeOptimizations Opisuje funkcje kompilatora /GT (pamięci lokalnej wątku obsługi Fiber bezpieczne) opcji.
Właściwość publiczna EnableFunctionLevelLinking Zwraca lub ustawia wartość, która umożliwia łączenie poziomu funkcji.EnableFunctionLevelLinking Opisuje funkcje kompilatora /Gy (Włączanie funkcji na poziomie łączenie) opcji.
Właściwość publiczna EnableIntrinsicFunctions Pobiera lub ustawia wartość określającą, czy mają być używane funkcje wewnętrzne do generowania kodu szybsze, ale prawdopodobnie większy.EnableIntrinsicFunctions Opisuje funkcje kompilatora /OI (generowanie funkcje wewnętrzne) opcji.
Właściwość publiczna EnablePREfast Pobiera lub ustawia, czy włączono analizy kodu macierzystego.
Właściwość publiczna ErrorReporting Pobiera lub ustawia raportowanie błędów kompilatora.
Właściwość publiczna ExceptionHandling Zwraca lub ustawia wartość używana dla wywołań destruktory obiektów automatyczne podczas unwind stosu, spowodowanych thrown wyjątek.ExceptionHandling Opisuje funkcje kompilatora /Eh (Model obsługi wyjątków) opcji.
Właściwość publiczna ExecutionBucket Infrastruktura. Microsoft tylko do użytku wewnętrznego.
Właściwość publiczna ExpandAttributedSource Pobiera lub ustawia wartość określającą, czy należy utworzyć plik aukcji z rozwiniętym atrybuty dodane do pliku źródłowego.ExpandAttributedSource Opisuje funkcje kompilatora /FX (kod scalania) opcji.
Właściwość publiczna FavorSizeOrSpeed Pobiera lub ustawia wartość określającą, czy mogą pomóc w ulepszeniu kodu wielkości lub kod prędkości.FavorSizeOrSpeed Opisuje funkcje kompilatora / Os, /Ot (kod małych korzyść, korzyść szybki kod) opcje.
Właściwość publiczna FloatingPointExceptions Ustawia lub pobiera czy zmiennoprzecinkowych, czy jest włączona obsługa wyjątków zdefiniowane przez użytkownika.
Właściwość publiczna floatingPointModel Ustawia lub pobiera zmiennoprzecinkowy punkt modelu.
Właściwość publiczna ForceConformanceInForLoopScope Pobiera lub ustawia wartość określającą, czy można wymusić na kompilatorze odpowiadają zakres lokalny w pętli For.ForceConformanceInForLoopScope Opisuje funkcje kompilatora /Zc:forScope (życie zgodność w zakresie pętli) opcji.
Właściwość publiczna ForcedIncludeFiles Zwraca lub ustawia wartość, która określa jeden lub więcej zmuszony dołączyć pliki.ForcedIncludeFiles Opisuje funkcje kompilatora /Fi (nazwa zmuszony dołączyć plik) opcji.
Właściwość publiczna ForcedUsingFiles Wymusza używanie nazwy pliku, jak gdyby miał został przekazany do # za pomocą dyrektywy (C++) dyrektywy.ForcedUsingFiles Opisuje funkcje kompilatora /Fu (nazwa zmuszony # przy użyciu pliku) opcji.
Właściwość publiczna FullIncludePath Pobiera listę wszystkich katalogów zawarte w kompilacji; Konkatenacja określona z opcją /I katalogów i katalogów, określone w VC++ Directories okno dialogowe.Jak również będą oceniane makr w tych katalogach.
Właściwość publiczna GeneratePreprocessedFile Pobiera lub zestaw opcji przetwarzania wstępnego dla tej konfiguracji.GeneratePreprocessedFile Opisuje funkcje kompilatora /EP (Preprocess do stdout bez line dyrektyw) i /P (preprocesorem do pliku) opcje.
Właściwość publiczna GenerateXMLDocumentationFiles Ustawia lub pobiera czy generować pliki dokumentacji XML.
Właściwość publiczna IgnoreStandardIncludePath Zwraca lub ustawia wartość, która wskazuje, czy zignorować standardowe obejmują ścieżki.IgnoreStandardIncludePath udostępnia funkcje kompilatora /X (Ignoruj standardowe obejmują ścieżki) opcji kompilator MIDL Strony właściwości MIDL: Ogólne opcji i kompilatora zasobów Strony właściwości zasobów opcji.
Właściwość publiczna InlineFunctionExpansion Zwraca lub ustawia poziom wbudowanej funkcji rozszerzeń dla kompilacji.InlineFunctionExpansion Opisuje funkcje kompilatora /OB (funkcji oródwierszowej rozszerzenia) opcje.
Właściwość publiczna KeepComments Pobiera lub ustawia wartość określającą, czy pomijać gazy komentarz z kodu źródłowego.KeepComments Opisuje funkcje kompilatora /C (Zachowaj komentarze podczas wstępnego przetwarzania) opcji.
Właściwość publiczna MinimalRebuild Zwraca lub ustawia wartość indicting, czy do wykrywania zmian w definicji klasy C++ i ponownie skompilować plików źródłowych, których dotyczy luka.MinimalRebuild Opisuje funkcje kompilatora /GM (Włącz Odbuduj minimalny) opcji.
Właściwość publiczna ObjectFile Pobiera lub ustawia nazwę, aby zastąpić domyślną nazwą pliku obiektu.ObjectFile Opisuje funkcje kompilatora /FO (nazwa pliku obiektu) opcji.
Właściwość publiczna OmitDefaultLibName Pobiera lub ustawia, czy domyślna nazwa biblioteki zostanie pominięty.
Właściwość publiczna OmitFramePointers Pobiera lub ustawia wartość określającą, czy pomijać framepointers.OmitFramePointers Opisuje funkcje kompilatora /Oy (wskaźnik ramki pominięcie) opcji.
Właściwość publiczna OpenMP Pobiera lub określić, czy OpenMP jest włączone.
Właściwość publiczna Optimization Zwraca lub ustawia opcje optymalizacji kodu.Optimization Opisuje funkcje kompilatora (Wyłącz (Debugowanie)) i wartości, / O1, /O2 (zminimalizować rozmiar, zmaksymalizować szybkość), i /OX (Pełna optymalizacja) opcje.
Właściwość publiczna PrecompiledHeaderFile Pobiera lub ustawia ścieżkę i/lub nazwę pliku wygenerowanego nagłówka wstępnie skompilowana.PrecompiledHeaderFile Opisuje funkcje kompilatora / Ol (nazwa.Plik pch) opcji.
Właściwość publiczna PrecompiledHeaderThrough Zwraca lub ustawia nazwę pliku nagłówka, aby używać podczas tworzenia lub przy użyciu pliku nagłówka wstępnie skompilowana.PrecompiledHeaderThrough Opisuje funkcje kompilatora /Yc (Tworzenie wstępnie skompilowanym pliku nagłówka), i /YU (Użyj wstępnie skompilowana nagłówek pliku) opcje.
Właściwość publiczna PreprocessorDefinitions Pobiera lub ustawia definiuje jeden lub więcej preprocesora.PreprocessorDefinitions udostępnia funkcje kompilatora /D (preprocesora definicje) opcji kompilator MIDL Strony właściwości MIDL: Ogólne opcji i kompilatora zasobów Strony właściwości zasobów opcji.
Właściwość publiczna ProgramDataBaseFileName Pobiera lub ustawia nazwę dla pliku generowanych przez kompilator .pdb i nazwa podstawowa pliku wymagane .idb generowanych przez kompilator.ProgramDataBaseFileName Opisuje funkcje kompilatora /FD (nazwa pliku bazy danych programu) opcji.
Właściwość publiczna RuntimeLibrary Zwraca lub ustawia run-time library do łączenia.RuntimeLibrary Opisuje funkcje kompilatora / /LD MD, /MT, (Użyj Run-Time Library) opcje.
Właściwość publiczna RuntimeTypeInfo Pobiera lub ustawia wartość określającą, czy dodać kod sprawdzania typów obiektów C++ w czasie wykonywania (informacje dotyczące typu run-time).RuntimeTypeInfo Opisuje funkcje kompilatora Się przełączników /GR (Włącz Run-Time typu informacji) opcji.
Właściwość publiczna ShowIncludes Pobiera lub ustawia wartość określającą, czy generować listy dołączania plików z dane wyjściowe kompilatora.ShowIncludes Opisuje funkcje kompilatora /showIncludes (lista zawiera pliki) opcji.
Właściwość publiczna SmallerTypeCheck Pobiera lub ustawia wartość określającą, czy należy włączyć sprawdzanie konwersji typów mniejsze.SmallerTypeCheck Opisuje funkcje kompilatora / RTC (błąd w czasie wykonywania kontroli) opcji.
Właściwość publiczna StringPooling Pobiera lub ustawia wartość określającą, czy aby włączyć tylko do odczytu ciąg puli generowania mniejszych kod skompilowany.StringPooling Opisuje funkcje kompilatora /GF (wyeliminowania dwóch ciągów) opcji.
Właściwość publiczna StructMemberAlignment Określa 1-, 2-, 4-, 8- lub 16-bajtowy granice struct Członkowskie wyrównania.StructMemberAlignment eksponuje funkcjonalność kompilator C++ /ZP (Struct Członkowskie wyrównanie) opcji i kompilator MIDL Strony właściwości MIDL: Zaawansowane opcji.
Właściwość publiczna SuppressStartupBanner Pomija wyświetlanie komunikatów transparent i informacji startowych.
Właściwość publiczna ToolKind Pobiera nazwę tego rodzaju narzędzia.
Właściwość publiczna toolName Pobiera nazwę określonego narzędzia.
Właściwość publiczna ToolPath Pobiera ścieżkę do określonego narzędzia.
Właściwość publiczna TreatWChar_tAsBuiltInType Pobiera lub ustawia wartość określającą, czy traktować wchar_t jako wbudowany typ.TreatWChar_tAsBuiltInType Opisuje funkcje kompilatora /Zc:wchar_t (Typ macierzysty jest wchar_t) opcji.
Właściwość publiczna UndefineAllPreprocessorDefinitions Pobiera lub ustawia wartość określającą, czy nie zdefiniowany wszystkich uprzednio zdefiniowane wartości preprocesora.UndefineAllPreprocessorDefinitions Opisuje funkcje kompilatora / /U U, (Usuń definicję symbole) opcji.
Właściwość publiczna UndefinePreprocessorDefinitions Zwraca lub ustawia wartość, która określa, że jeden lub więcej preprocesora undefines.UndefinePreprocessorDefinitions eksponuje funkcjonalność kompilator C++ / /U U, (Usuń definicję symbole) opcji i kompilator MIDL Strony właściwości MIDL: Zaawansowane opcji.
Właściwość publiczna UseFullPaths Pobiera lub ustawia, czy użyć pełnej ścieżki.
Właściwość publiczna UsePrecompiledHeader Zwraca lub ustawia wartość, która umożliwia tworzenie i stosowanie wstępnie skompilowana nagłówka podczas kompilacji.UsePrecompiledHeader Opisuje funkcje kompilatora /Yc (Tworzenie wstępnie skompilowanym pliku nagłówka) i /YU (Użyj wstępnie skompilowana nagłówek pliku) opcje.
Właściwość publiczna UseUnicodeResponseFiles Określa, czy complier używa plików odpowiedzi Unicode, lub nie.
Właściwość publiczna VCProjectEngine Pobiera wskaźnik do aparatu projektu.
Właściwość publiczna WarnAsError Pobiera lub ustawia wartość określającą, czy należy włączyć traktuje wszystkie ostrzeżenia jako błędy kompilatora.WarnAsError eksponuje funkcjonalność kompilator C++ /w, /Wn, /WX, /Wall, /wln, /wdn, /wen, / zdobył (poziom ostrzeżeń) opcji i kompilator MIDL Strony właściwości MIDL: Ogólne opcji.
Właściwość publiczna WarningLevel Zwraca lub ustawia wartość, która reprezentuje jak ściśle kompilator sprawdza, czy potencjalnie podejrzanych konstrukcji.WarningLevel eksponuje funkcjonalność kompilator C++ /w, /Wn, /WX, /Wall, /wln, /wdn, /wen, / zdobył (poziom ostrzeżeń) opcji i kompilator MIDL /w, /Wn, /WX, /Wall, /wln, /wdn, /wen, / zdobył (poziom ostrzeżeń) opcji.
Właściwość publiczna WholeProgramOptimization Pobiera lub ustawia wartość określającą, czy należy włączyć moduł cross optymalizacje poprzez opóźnianie generowania kodu, aby utworzyć łącze do czasu.WholeProgramOptimization Opisuje funkcje kompilatora /GL (optymalizacja całego programu) opcji.
Właściwość publiczna XMLDocumentationFileName Zwraca lub ustawia nazwę pliku dokumentacji XML.

Początek

Metody

  Nazwa Opis
Metoda publiczna 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, przykład/G7 i /GB

Przykłady

Poniższy przykład demonstruje, jak używać EnablePREfast i AdditionalOptions właściwości, aby ustawić /analyze:WX- przełączyć.(Obie właściwości są wymagane w tym celu). Określanie /analyze:WX- oznacza, że kod ostrzeżenia analizy nie będą 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 Jak: skompilować i uruchomić przykłady kodu modelu obiektu automatyzacji.Następnie w nowe wystąpienie Visual Studio, załadować Visual C++ projektu, a następnie uaktywnić Dodaj w 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

Inne zasoby

Walkthrough: Using /clr:pure Features