CompilerInfo.CreateDefaultCompilerParameters Metodo

Definizione

Ottiene le impostazioni del compilatore configurate per l'implementazione del provider del linguaggio.

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

Restituisce

Istanza della classe CompilerParameters in sola lettura che contiene le opzioni e le impostazioni del compilatore configurate per il provider del linguaggio.

Esempio

Nell'esempio di codice seguente viene determinato se il linguaggio di input dispone di un'implementazione configurata CodeDomProvider nel computer. Se è configurato un provider per la lingua specificata, nell'esempio vengono visualizzate le impostazioni di configurazione del provider di lingua. Questo esempio di codice fa parte di un esempio più ampio fornito per la CompilerInfo classe .

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

Commenti

Usare il CreateDefaultCompilerParameters metodo per esaminare le impostazioni del compilatore delle CompilerInfo istanze restituite dai CodeDomProvider.GetAllCompilerInfo metodi e CodeDomProvider.GetCompilerInfo .

L'elemento< system.codedom> nel file di configurazione del computer contiene il provider di linguaggio e le impostazioni di configurazione del compilatore per ogni CodeDomProvider implementazione nel computer. Ogni elemento di configurazione del provider di linguaggio può contenere attributi e warningLevel facoltativicompilerOptions. Questi attributi definiscono i valori predefiniti per le CompilerParameters.CompilerOptions proprietà e CompilerParameters.WarningLevel .

Se l'elemento di configurazione del provider di linguaggio non definisce l'attributo compilerOptions , il valore della CompilerParameters.CompilerOptions proprietà è una stringa vuota (""). Se l'elemento di configurazione del provider di linguaggio non definisce l'attributo warningLevel , il valore della CompilerParameters.WarningLevel proprietà è -1.

Si applica a

Vedi anche