Exportar (0) Imprimir
Expandir todo
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

VCCLCompilerTool (Interfaz)

El objeto VCCLCompilerTool expone la funcionalidad de las opciones del compilador de C++. Vea Opciones del compilador para obtener más información sobre las opciones del compilador.

Espacio de nombres:  Microsoft.VisualStudio.VCProjectEngine
Ensamblado:  Microsoft.VisualStudio.VCProjectEngine (en Microsoft.VisualStudio.VCProjectEngine.dll)

[GuidAttribute("3D6193F2-8B5D-4B0A-967F-7D163D918848")]
public interface VCCLCompilerTool

El tipo VCCLCompilerTool expone los siguientes miembros.

  NombreDescripción
Propiedad públicaAdditionalIncludeDirectoriesObtiene o establece uno o más directorios para agregar a la ruta de inclusión. AdditionalIncludeDirectories expone la funcionalidad de la opción /I (Directorios de inclusión adicionales) del compilador, la opción Páginas de propiedades MIDL: General del compilador de MIDL, y la opción Páginas de propiedades Recursos del compilador de recursos.
Propiedad públicaAdditionalOptionsObtiene o establece opciones que se van a agregar al final de la línea de comandos inmediatamente antes del nombre o de los nombres de archivo. Un ejemplo de ello es si una opción no es compatible con el modelo de objetos.
Propiedad públicaAdditionalUsingDirectoriesObtiene o establece un directorio de búsqueda para resolver las referencias a archivos que se transfieren a la directiva #using (Directiva) (C++). AdditionalUsingDirectories expone la funcionalidad de la opción /AI (Especificar directorios de metadatos) del compilador.
Propiedad públicaAssemblerListingLocationObtiene o establece la ruta de acceso relativa y/o nombre de un archivo de listas de ASM. AssemblerListingLocation expone la funcionalidad de la opción /Fa del compilador.
Propiedad públicaAssemblerOutputObtiene o establece el contenido del archivo de salida del lenguaje de ensamblado. AssemblerOutput expone la funcionalidad de las opciones /FA, /Fa (Archivo de lista) del compilador.
Propiedad públicaBasicRuntimeChecksObtiene o establece un valor para indicar si se van a realizar comprobaciones completas de errores en tiempo de ejecución /RTC (Comprobaciones de errores en tiempo de ejecución)), si se va a comprobar la validez del marco de pila en tiempo de ejecución (/RTC (Comprobaciones de errores en tiempo de ejecución)) y si se van a comprobar las variables no inicializadas en tiempo de ejecución (/RTC (Comprobaciones de errores en tiempo de ejecución)).
Propiedad públicaBrowseInformationEspecifica el nivel información de examen en el archivo .bsc. BrowseInformation expone la funcionalidad de las opciones /FR, /Fr (Crear archivo .Sbr) del compilador.
Propiedad públicaBrowseInformationFileObtiene o establece el nombre opcional para el archivo de información del explorador. BrowseInformationFile expone la funcionalidad de las opciones /FR, /Fr (Crear archivo .Sbr) del compilador.
Propiedad públicaBufferSecurityCheckObtiene o establece un valor que indica si se van a comprobar las saturaciones de búfer. BufferSecurityCheck expone la funcionalidad de la opción /GS (Comprobación de seguridad del búfer) del compilador.
Propiedad públicaCallingConventionObtiene o establece la convención de llamada predeterminada de la aplicación. CallingConvention expone la funcionalidad de las opciones /Gd, /Gr, /Gv, /Gz (Convención de llamada) del compilador.
Propiedad públicaCompileAsSelecciona la opción de lenguaje de compilación para los archivos .C y .CPP. CompileAs expone la funcionalidad de las opciones /Tc, /Tp, /TC, /TP (Especificar el tipo de archivo de código fuente) del compilador.
Propiedad públicaCompileAsManagedObtiene o establece un valor que indica las opciones del compilador.
Propiedad públicaCompileOnlyObtiene o establece un valor que indica si se va a compilar sin vinculación.
Propiedad públicaDebugInformationFormatObtiene o establece el tipo de información de depuración generada por el compilador. DebugInformationFormat expone la funcionalidad de las opciones /Z7, /Zi, /ZI (Formato de la información de depuración) del compilador.
Propiedad públicaDefaultCharIsUnsignedObtiene o establece el tipo de carácter predeterminado que se va a firmar. DefaultCharIsUnsigned expone la funcionalidad de la opción /J (El tipo de carácter predeterminado no tiene signo) del compilador.
Propiedad públicaDetect64BitPortabilityProblemsObtiene o establece un valor que indica si el compilador comprobará si hay problemas de portabilidad de 64 bits. Detect64BitPortabilityProblems expone la funcionalidad de la opción /Wp64 (Detectar problemas de portabilidad de 64 bits) del compilador.
Propiedad públicaDisableLanguageExtensionsObtiene o establece un valor que indica si se van a suprimir las extensiones de lenguaje. DisableLanguageExtensions expone la funcionalidad de la opción /Za, /Ze (Deshabilitar extensiones de lenguaje) del compilador.
Propiedad públicaDisableSpecificWarningsObtiene o establece un valor que deshabilita los números de advertencia deseados; coloca los números en una lista delimitada por punto y coma. DisableSpecificWarnings expone la funcionalidad de la opción /w, /Wn, /WX, /Wall, /wln, /wdn, /wen, /won (Nivel de advertencia) del compilador.
Propiedad públicaEnableEnhancedInstructionSetObtiene o establece un valor que permite el uso de instrucciones situadas en procesadores que admiten conjuntos de instrucciones mejorados, como las mejoras de SSE y SSE2 a IA-32. EnableEnhancedInstructionSet expone la funcionalidad de la opción /ARCH del compilador.
Propiedad públicaEnableFiberSafeOptimizationsObtiene o establece un valor que permite optimizar el espacio de memoria cuando se usa fibra y acceso de almacenamiento local para los subprocesos. EnableFiberSafeOptimizations expone la funcionalidad de la opción /GT (Admitir el almacenamiento local de subprocesos para fibra) del compilador.
Propiedad públicaEnableFunctionLevelLinkingObtiene o establece un valor que habilita la vinculación en el nivel de función. EnableFunctionLevelLinking expone la funcionalidad de la opción /Gy (Habilitar vinculación en el nivel de función) del compilador.
Propiedad públicaEnableIntrinsicFunctionsObtiene o establece un valor que indica si se van a usar funciones intrínsecas para generar código más rápido, pero posiblemente de mayor tamaño. EnableIntrinsicFunctions expone la funcionalidad de la opción /Oi (Generar funciones intrínsecas) del compilador.
Propiedad públicaEnablePREfastObtiene o establece si el análisis de código nativo está habilitado.
Propiedad públicaErrorReportingObtiene o establece los informes de errores del compilador.
Propiedad públicaExceptionHandlingObtiene o establece un valor usado para las llamadas a destructores para objetos automáticos durante un desenredo de pila debido a una excepción producida. ExceptionHandling expone la funcionalidad de la opción /EH (Modelo de control de excepciones) del compilador.
Propiedad públicaExecutionBucketInfraestructura. Sólo para uso interno de Microsoft.
Propiedad públicaExpandAttributedSourceObtiene o establece un valor que indica si se ha de crear un archivo de lista con los atributos expandidos insertados en el archivo de código fuente. ExpandAttributedSource expone la funcionalidad de la opción /Fx (Combinar código insertado) del compilador.
Propiedad públicaFavorSizeOrSpeedObtiene o establece un valor que indica si se va a favorecer el tamaño o la velocidad del código. FavorSizeOrSpeed expone la funcionalidad de las opciones /Os, /Ot (Favorecer código pequeño, favorecer código rápido) del compilador.
Propiedad públicaFloatingPointExceptionsEstablece u obtiene si está habilitado el control de excepciones de punto flotante definido por el usuario.
Propiedad públicafloatingPointModelEstablece u obtiene el modelo de punto flotante.
Propiedad públicaForceConformanceInForLoopScopeObtiene o establece un valor que indica si se va a forzar el compilador para cumplir con el ámbito local en un bucle For. ForceConformanceInForLoopScope expone la funcionalidad de la opción /Zc:forScope (Forzar ajuste en el ámbito del bucle For) del compilador.
Propiedad públicaForcedIncludeFilesObtiene o establece un valor que especifica uno o más archivos de inclusión forzada. ForcedIncludeFiles expone la funcionalidad de la opción /FI (Dar nombre al archivo de inclusión obligatorio) del compilador.
Propiedad públicaForcedUsingFilesFuerza el uso de un nombre de archivo, como si se hubiera transferido a la directiva #using (Directiva) (C++). ForcedUsingFiles expone la funcionalidad de la opción /FU (Asignar nombre al archivo #using obligatorio) del compilador.
Propiedad públicaFullIncludePathObtiene una lista de todos los directorios incluidos en la compilación; es una concatenación de los directorios especificados con /I y los directorios especificados en el cuadro de diálogo VC++ Directories. También se evaluarán las macros presentes en estos directorios.
Propiedad públicaGeneratePreprocessedFileObtiene o establece la opción de preprocesamiento para esta configuración. GeneratePreprocessedFile expone la funcionalidad de las opciones /EP (Preprocesar para stdout sin directivas #line) y /P (Preprocesar y escribir en un archivo) del compilador.
Propiedad públicaGenerateXMLDocumentationFilesEstablece u obtiene si se van a generar archivos de documentación XML.
Propiedad públicaIgnoreStandardIncludePathObtiene o establece un valor que indica si se va a omitir la ruta de inclusión estándar. IgnoreStandardIncludePath expone la funcionalidad de la opción /X (Omitir rutas de acceso de inclusión estándar) del compilador, la opción Páginas de propiedades MIDL: General del compilador de MIDL, y la opción Páginas de propiedades Recursos del compilador de recursos.
Propiedad públicaInlineFunctionExpansionObtiene o establece el nivel de expansión de la función insertada para la compilación. InlineFunctionExpansion expone la funcionalidad de las opciones /Ob (Expansión de funciones inline) del compilador.
Propiedad públicaKeepCommentsObtiene o establece un valor que indica si se va a suprimir la franja de comentarios del código fuente. KeepComments expone la funcionalidad de la opción /C (Conservar los comentarios durante el preprocesamiento) del compilador.
Propiedad públicaMinimalRebuildObtiene o establece un valor que indica si se van a detectar los cambios en las definiciones de clase de C++ y se van a volver a compilar los archivos de código fuente afectados. MinimalRebuild expone la funcionalidad de la opción /Gm (Habilitar recompilación mínima) del compilador.
Propiedad públicaObjectFileObtiene o establece un nombre para invalidar el nombre del archivo objeto predeterminado. ObjectFile expone la funcionalidad de la opción /Fo (Nombre del archivo objeto) del compilador.
Propiedad públicaOmitDefaultLibNameObtiene o establece si se omite el nombre de biblioteca predeterminado.
Propiedad públicaOmitFramePointersObtiene o establece un valor que indica si se van a suprimir los punteros de marcos. OmitFramePointers expone la funcionalidad de la opción /Oy (Omisión de puntero de marco) del compilador.
Propiedad públicaOpenMPObtiene o establece si OpenMP está habilitado.
Propiedad públicaOptimizationObtiene o establece las opciones para la optimización. Optimization expone la funcionalidad de las opciones /Od (Deshabilitar (Depurar)), /O1, /O2 (Minimizar tamaño, maximizar velocidad) y /Ox (Optimización completa) del compilador.
Propiedad públicaPrecompiledHeaderFileObtiene o establece la ruta de acceso y/o nombre del archivo de encabezado precompilado generado. PrecompiledHeaderFile expone la funcionalidad de la opción /Fp (Dar nombre al archivo .Pch) del compilador.
Propiedad públicaPrecompiledHeaderThroughObtiene o establece el archivo de encabezado que se va a usar al crear o usar un archivo de encabezado precompilado. PrecompiledHeaderThrough expone la funcionalidad de las opciones /Yc (Crear archivo de encabezado precompilado) y /Yu (Utilizar el archivo de encabezado precompilado) del compilador.
Propiedad públicaPreprocessorDefinitionsObtiene o establece una o más definiciones del preprocesador. PreprocessorDefinitions expone la funcionalidad de la opción /D (Definiciones de preprocesador) del compilador, la opción Páginas de propiedades MIDL: General del compilador de MIDL, y la opción Páginas de propiedades Recursos del compilador de recursos.
Propiedad públicaProgramDataBaseFileNameObtiene o establece un nombre para un archivo .pdb generado por el compilador y nombre base para el archivo .idb necesario generado por el compilador. ProgramDataBaseFileName expone la funcionalidad de la opción /Fd (Nombre del archivo de base de datos del programa) del compilador.
Propiedad públicaRuntimeLibraryObtiene o establece la biblioteca de tiempo de ejecución para los vínculos. RuntimeLibrary expone la funcionalidad de las opciones /MD, /MT, /LD (Utilizar la biblioteca en tiempo de ejecución) del compilador.
Propiedad públicaRuntimeTypeInfoObtiene o establece un valor que indica si se va a agregar código para comprobar los tipos de objeto de C++ en tiempo de ejecución (información de tipo en tiempo de ejecución). RuntimeTypeInfo expone la funcionalidad de la opción /GR (Habilitar la información de tipo en tiempo de ejecución) del compilador.
Propiedad públicaShowIncludesObtiene o establece un valor que indica si se va a generar una lista de archivos de inclusión con la salida del compilador. ShowIncludes expone la funcionalidad de la opción /showIncludes (Enumerar archivos de inclusión) del compilador.
Propiedad públicaSmallerTypeCheckObtiene o establece un valor que indica si se ha de permitir la comprobación para la conversión a tipos más pequeños. SmallerTypeCheck expone la funcionalidad de la opción /RTC (Comprobaciones de errores en tiempo de ejecución) del compilador.
Propiedad públicaStringPoolingObtiene o establece un valor que indica si se va a habilitar la agrupación de cadenas de solo lectura para generar código compilado de menor tamaño. StringPooling expone la funcionalidad de la opción /GF (Eliminar cadenas duplicadas) del compilador.
Propiedad públicaStructMemberAlignmentEspecifica los límites de 1, 2, 4, 8 o 16 bytes para la alineación de los miembros de struct. StructMemberAlignment expone la funcionalidad de la opción /Zp (Alineación de miembros de estructura) del compilador de C++ y la opción Páginas de propiedades MIDL: Avanzadas del compilador de MIDL.
Propiedad públicaSuppressStartupBannerSuprime la presentación de la pancarta de inicio y los mensajes de información.
Propiedad públicaToolKindObtiene el nombre del tipo de herramienta.
Propiedad públicatoolNameObtiene el nombre de la herramienta especificada.
Propiedad públicaToolPathObtiene la ruta de acceso a la herramienta especificada.
Propiedad públicaTreatWChar_tAsBuiltInTypeObtiene o establece un valor que indica si wchar_t se va a tratar como un tipo integrado. TreatWChar_tAsBuiltInType expone la funcionalidad de la opción /Zc:wchar_t (wchar_t es un tipo nativo) del compilador.
Propiedad públicaUndefineAllPreprocessorDefinitionsObtiene o establece un valor que indica si no se van a definir todos los valores de preprocesador definidos previamente. UndefineAllPreprocessorDefinitions expone la funcionalidad de la opción /U, /u (Anular la definición de símbolos) del compilador.
Propiedad públicaUndefinePreprocessorDefinitionsObtiene o establece un valor que especifica una o más definiciones del preprocesador. UndefinePreprocessorDefinitions expone la funcionalidad de la opción /U, /u (Anular la definición de símbolos) del compilador de C++ y la opción Páginas de propiedades MIDL: Avanzadas del compilador de MIDL.
Propiedad públicaUseFullPathsObtiene o establece si se van a usar rutas de acceso completas.
Propiedad públicaUsePrecompiledHeaderObtiene o establece un valor que habilita la creación o el uso de un encabezado precompilado durante la compilación. UsePrecompiledHeader expone la funcionalidad de las opciones /Yc (Crear archivo de encabezado precompilado) y /Yu (Utilizar el archivo de encabezado precompilado) del compilador.
Propiedad públicaUseUnicodeResponseFilesDesigna si el compilador usa archivos de respuesta Unicode o no.
Propiedad públicaVCProjectEngineObtiene un puntero al motor de proyecto.
Propiedad públicaWarnAsErrorObtiene o establece un valor que indica si se habilita el compilador para tratar todas las advertencias como errores. WarnAsError expone la funcionalidad de la opción /w, /Wn, /WX, /Wall, /wln, /wdn, /wen, /won (Nivel de advertencia) del compilador de C++ y la opción Páginas de propiedades MIDL: General del compilador de MIDL.
Propiedad públicaWarningLevelObtiene o establece un valor que representa lo estricto que debe ser el compilador a la hora de comprobar posibles construcciones sospechosas. WarningLevel expone la funcionalidad de la opción /w, /Wn, /WX, /Wall, /wln, /wdn, /wen, /won (Nivel de advertencia) del compilador de C++ y la opción /w, /Wn, /WX, /Wall, /wln, /wdn, /wen, /won (Nivel de advertencia) del compilador de MIDL.
Propiedad públicaWholeProgramOptimizationObtiene o establece un valor que indica si se van a habilitar las optimizaciones entre módulos mientras se retrasa la generación de código al tiempo de vinculación. WholeProgramOptimization expone la funcionalidad de la opción /GL (Optimización de todo el programa) del compilador.
Propiedad públicaXMLDocumentationFileNameObtiene o establece el nombre del archivo de documentación XML.
Arriba

  NombreDescripción
Método públicoget_PropertyOptionInfraestructura. Sólo para uso interno de Microsoft.
Arriba

El ejemplo siguiente muestra cómo utilizar las propiedades EnablePREfast y AdditionalOptions para establecer el modificador /analyze:WX- . (Ambas propiedades son necesarios para hacerlo.) Especificar /analyze:WX- significa que las advertencias de análisis de código no se tratarán como errores al compilar con /WX. Para obtener más información, vea /analyze (análisis de código).

Para ejecutar este ejemplo, escriba y ejecute este ejemplo con Cómo: Compilar y ejecutar los ejemplos de código del modelo de objetos de automatización. A continuación, en la nueva instancia de Visual Studio, cargue un proyecto de Visual C++ y utilice el Administrador de complementos para activar el complemento.

// 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);
    }
}

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft