CodeDomProvider.GetCompilerInfo(String) Método

Definição

Retorna as configurações do provedor de idiomas e do compilador para o idioma especificado.

public:
 static System::CodeDom::Compiler::CompilerInfo ^ GetCompilerInfo(System::String ^ language);
[System.Runtime.InteropServices.ComVisible(false)]
public static System.CodeDom.Compiler.CompilerInfo GetCompilerInfo(string language);
[<System.Runtime.InteropServices.ComVisible(false)>]
static member GetCompilerInfo : string -> System.CodeDom.Compiler.CompilerInfo
Public Shared Function GetCompilerInfo (language As String) As CompilerInfo

Parâmetros

language
String

Um nome de idioma.

Retornos

Um CompilerInfo objeto preenchido com as configurações da implementação configurada CodeDomProvider .

Atributos

Exceções

O language não tem um provedor configurado neste computador.

O language é null.

O chamador não tem a permissão necessária.

Exemplos

O exemplo de código a seguir determina a CodeDomProvider implementação de um idioma de entrada e exibe as configurações definidas para o provedor de idiomas. Este exemplo de código faz parte de um exemplo maior fornecido para a CompilerInfo classe.

CodeDomProvider provider;

// Check for a provider corresponding to the input language.
if (CodeDomProvider.IsDefinedLanguage(language))
{
    provider = CodeDomProvider.CreateProvider(language);

    // 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.

    CompilerInfo langCompilerInfo = CodeDomProvider.GetCompilerInfo(language);
    CompilerParameters langCompilerConfig = langCompilerInfo.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}\".",
        language);
}
Dim provider As CodeDomProvider

' Check for a provider corresponding to the input language.  
If CodeDomProvider.IsDefinedLanguage(language) Then
   provider = CodeDomProvider.CreateProvider(language)
   
   ' 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 langCompilerInfo As CompilerInfo = CodeDomProvider.GetCompilerInfo(language)
   Dim langCompilerConfig As CompilerParameters = langCompilerInfo.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}"".", _
       language)
End If

Comentários

O <elemento system.codedom> no arquivo de configuração do computador contém as configurações do provedor de idiomas e do compilador para cada CodeDomProvider implementação no computador. Para obter informações sobre arquivos de configuração do computador, consulte a seção Arquivos de Configuração do Computador na Configuração de Aplicativos. O GetCompilerInfo método pesquisa cada elemento de configuração do provedor para o nome do idioma especificado. A instância retornada CompilerInfo contém o provedor de idiomas configurado e as configurações do compilador.

O IsDefinedLanguage método verifica se pelo menos uma implementação de provedor dá suporte a um idioma específico. Você pode validar um nome de idioma usando IsDefinedLanguage antes de passá-lo para GetCompilerInfo. Isso impede a criação de um System.Configuration.ConfigurationException quando você acessa a CompilerInfo instância para um nome de idioma sem suporte.

Se mais de uma implementação de provedor estiver configurada para o nome do idioma de entrada, GetCompilerInfo retornará as configurações do último elemento de configuração do provedor correspondente.

Os nomes de idioma não diferenciam maiúsculas de minúsculas.

Aplica-se a

Confira também