Compartir vía


CompilerInfo.CreateDefaultCompilerParameters Método

Definición

Obtiene los valores del compilador configurado para la implementación del proveedor de lenguaje.

public:
 System::CodeDom::Compiler::CompilerParameters ^ CreateDefaultCompilerParameters();
public System.CodeDom.Compiler.CompilerParameters CreateDefaultCompilerParameters ();
member this.CreateDefaultCompilerParameters : unit -> System.CodeDom.Compiler.CompilerParameters
Public Function CreateDefaultCompilerParameters () As CompilerParameters

Devoluciones

Una instancia de CompilerParameters de sólo lectura que contiene las opciones y valores del compilador configurados para el proveedor de lenguaje.

Ejemplos

En el ejemplo de código siguiente se determina si el idioma de entrada tiene una implementación configurada CodeDomProvider en el equipo. Si hay un proveedor configurado para el idioma especificado, en el ejemplo se muestran los valores de configuración del proveedor de idioma. Este ejemplo de código es parte de un ejemplo más grande proporcionado para la clase CompilerInfo.

CodeDomProvider^ provider = nullptr;
CompilerInfo^ info = CodeDomProvider::GetCompilerInfo( configLanguage );

// Check whether there is a provider configured for this language.
if ( info->IsCodeDomProviderTypeValid )
{
   // Get a provider instance using the configured type information.
   provider = dynamic_cast<CodeDomProvider^>(Activator::CreateInstance( info->CodeDomProviderType ));
   if ( provider )
   {
      // Display information about this language provider.
      Console::WriteLine( "Language provider:  {0}", provider->ToString() );
      Console::WriteLine();
      Console::WriteLine( "  Default file extension:  {0}", provider->FileExtension );
      Console::WriteLine();
      
      // Get the compiler settings for this language.
      CompilerParameters^ langCompilerConfig = info->CreateDefaultCompilerParameters();
      if ( langCompilerConfig )
      {
         Console::WriteLine( "  Compiler options:        {0}", langCompilerConfig->CompilerOptions );
         Console::WriteLine( "  Compiler warning level:  {0}", langCompilerConfig->WarningLevel.ToString() );
      }
   }
}

if ( provider == nullptr ) // Tell the user that the language provider was not found.
   Console::WriteLine( "There is no provider configured for input language \"{0}\".", configLanguage );
CompilerInfo info = CodeDomProvider.GetCompilerInfo(configLanguage);

// Check whether there is a provider configured for this language.
if (info.IsCodeDomProviderTypeValid)
{
    // Get a provider instance using the configured type information.
    CodeDomProvider provider;
    provider = (CodeDomProvider)Activator.CreateInstance(info.CodeDomProviderType);

    // Display information about this language provider.
    Console.WriteLine("Language provider:  {0}",
        provider.ToString());
    Console.WriteLine();
    Console.WriteLine("  Default file extension:  {0}",
        provider.FileExtension);
    Console.WriteLine();

    // Get the compiler settings for this language.

    CompilerParameters langCompilerConfig = info.CreateDefaultCompilerParameters();

    Console.WriteLine("  Compiler options:        {0}",
        langCompilerConfig.CompilerOptions);
    Console.WriteLine("  Compiler warning level:  {0}",
        langCompilerConfig.WarningLevel);
}
else
{
    // Tell the user that the language provider was not found.
    Console.WriteLine("There is no provider configured for input language \"{0}\".",
        configLanguage);
}
Dim info As CompilerInfo = CodeDomProvider.GetCompilerInfo(configLanguage)

' Check whether there is a provider configured for this language.
If info.IsCodeDomProviderTypeValid Then
   ' Get a provider instance using the configured type information.
   Dim provider As CodeDomProvider
   provider = CType(Activator.CreateInstance(info.CodeDomProviderType), CodeDomProvider)
   
   ' Display information about this language provider.
   Console.WriteLine("Language provider:  {0}", _
       provider.ToString())
   Console.WriteLine()
   Console.WriteLine("  Default file extension:  {0}", _
       provider.FileExtension)
   Console.WriteLine()
   
   ' Get the compiler settings for this language.
   Dim langCompilerConfig As CompilerParameters = info.CreateDefaultCompilerParameters()
   
   Console.WriteLine("  Compiler options:        {0}", _
       langCompilerConfig.CompilerOptions)
   Console.WriteLine("  Compiler warning level:  {0}", _
       langCompilerConfig.WarningLevel)
Else
   ' Tell the user that the language provider was not found.
   Console.WriteLine("There is no provider configured for input language ""{0}"".", configLanguage)
End If

Comentarios

Use el CreateDefaultCompilerParameters método para examinar la configuración del compilador de las CompilerInfo instancias devueltas por los CodeDomProvider.GetAllCompilerInfo métodos y CodeDomProvider.GetCompilerInfo .

El <elemento system.codedom> del archivo de configuración de la máquina contiene los valores de configuración del proveedor de idioma y del compilador para cada CodeDomProvider implementación del equipo. Cada elemento de configuración del proveedor de idioma puede contener atributos y warningLevel opcionalescompilerOptions. Estos atributos definen los valores predeterminados de las CompilerParameters.CompilerOptions propiedades y CompilerParameters.WarningLevel .

Si el elemento de configuración del proveedor de idioma no define el compilerOptions atributo , el valor de la CompilerParameters.CompilerOptions propiedad es una cadena vacía (""). Si el elemento de configuración del proveedor de idioma no define el warningLevel atributo , el valor de la CompilerParameters.WarningLevel propiedad es -1.

Se aplica a

Consulte también