CodeDomProvider.GetCompilerInfo(String) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt die Sprachanbieter- und Compilerkonfigurationseinstellungen für die angegebene Sprache zurück.
public:
static System::CodeDom::Compiler::CompilerInfo ^ GetCompilerInfo(System::String ^ language);
public static System.CodeDom.Compiler.CompilerInfo GetCompilerInfo (string language);
[System.Runtime.InteropServices.ComVisible(false)]
public static System.CodeDom.Compiler.CompilerInfo GetCompilerInfo (string language);
static member GetCompilerInfo : string -> System.CodeDom.Compiler.CompilerInfo
[<System.Runtime.InteropServices.ComVisible(false)>]
static member GetCompilerInfo : string -> System.CodeDom.Compiler.CompilerInfo
Public Shared Function GetCompilerInfo (language As String) As CompilerInfo
Parameter
- language
- String
Der Name einer Sprache.
Gibt zurück
Ein mit Einstellungen der konfigurierten CompilerInfo-Implementierung aufgefülltes CodeDomProvider-Objekt.
- Attribute
Ausnahmen
language
verfügt auf diesem Computer über keinen konfigurierten Anbieter.
language
ist null
.
Der Aufrufer verfügt nicht über die erforderliche Berechtigung.
Beispiele
Im folgenden Codebeispiel wird die Implementierung für eine Eingabesprache bestimmt und die CodeDomProvider konfigurierten Einstellungen für den Sprachanbieter angezeigt. Dieses Codebeispiel ist Teil eines größeren Beispiels, das für die CompilerInfo Klasse bereitgestellt wird.
CodeDomProvider^ provider = nullptr;
// Check for a provider corresponding to the input language.
if ( CodeDomProvider::IsDefinedLanguage( language ) )
{
provider = CodeDomProvider::CreateProvider( language );
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.
CompilerInfo^ langCompilerInfo = CodeDomProvider::GetCompilerInfo( language );
if ( langCompilerInfo )
{
CompilerParameters^ langCompilerConfig = langCompilerInfo->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}\".", language );
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
Hinweise
Das <System.codedom-Element> in der Computerkonfigurationsdatei enthält die Sprachanbieter- und Compilerkonfigurationseinstellungen für jede CodeDomProvider Implementierung auf dem Computer. Informationen zu Computerkonfigurationsdateien finden Sie im Abschnitt "Computerkonfigurationsdateien" im Abschnitt " Apps konfigurieren". Die GetCompilerInfo Methode durchsucht jedes Anbieterkonfigurationselement für den angegebenen Sprachnamen. Die zurückgegebene Instanz enthält die konfigurierten CompilerInfo Sprachanbieter- und Compilereinstellungen.
Die IsDefinedLanguage Methode überprüft, ob mindestens eine Anbieterimplementierung eine bestimmte Sprache unterstützt. Sie können einen Sprachnamen überprüfen, IsDefinedLanguage bevor Sie ihn an GetCompilerInfoübergeben. Dadurch wird verhindert, dass ein System.Configuration.ConfigurationException Fehler ausgelöst wird, wenn Sie auf die CompilerInfo Instanz für einen nicht unterstützten Sprachnamen zugreifen.
Wenn mehr als eine Anbieterimplementierung für den Eingabesprachenamen konfiguriert ist, GetCompilerInfo gibt die Einstellungen aus dem letzten übereinstimmenden Anbieterkonfigurationselement zurück.
Sprachnamen sind groß- und kleinschreibungsfähig.