CompilerInfo::CreateProvider Method ()
Returns a CodeDomProvider instance for the current language provider settings.
Assembly: System (in System.dll)
Return Value
Type: System.CodeDom.Compiler::CodeDomProvider^A CodeDOM provider associated with the language provider configuration.
The CreateProvider method returns a CodeDomProvider instance for the current language provider settings.
Use the CreateProvider method to get a CodeDomProvider implementation for a CompilerInfo instance returned by the CodeDomProvider::GetAllCompilerInfo or CodeDomProvider::GetCompilerInfo method.
The following code example enumerates the language providers on the computer and displays the configuration and compiler settings for each language provider. This code example is part of a larger example provided for the CompilerInfo class.
array<CompilerInfo^>^allCompilerInfo = CodeDomProvider::GetAllCompilerInfo(); for ( int i = 0; i < allCompilerInfo->Length; i++ ) { String^ defaultLanguage; String^ defaultExtension; CompilerInfo^ info = allCompilerInfo[ i ]; CodeDomProvider^ provider = nullptr; if ( info ) provider = info->CreateProvider(); if ( provider ) { // Display information about this configured provider. Console::WriteLine( "Language provider: {0}", provider->ToString() ); Console::WriteLine(); Console::WriteLine( " Supported file extension(s):" ); array<String^>^extensions = info->GetExtensions(); for ( int i = 0; i < extensions->Length; i++ ) Console::WriteLine( " {0}", extensions[ i ] ); defaultExtension = provider->FileExtension; if ( !defaultExtension->StartsWith( "." ) ) defaultExtension = String::Concat( ".", defaultExtension ); Console::WriteLine( " Default file extension: {0}\n", defaultExtension ); Console::WriteLine( " Supported language(s):" ); array<String^>^languages = info->GetLanguages(); for ( int i = 0; i < languages->Length; i++ ) Console::WriteLine( " {0}", languages[ i ] ); defaultLanguage = CodeDomProvider::GetLanguageFromExtension( defaultExtension ); Console::WriteLine( " Default language: {0}", defaultLanguage ); Console::WriteLine(); // Get the compiler settings for this provider. CompilerParameters^ langCompilerConfig = info->CreateDefaultCompilerParameters(); if ( langCompilerConfig ) { Console::WriteLine( " Compiler options: {0}", langCompilerConfig->CompilerOptions ); Console::WriteLine( " Compiler warning level: {0}", langCompilerConfig->WarningLevel.ToString() ); } } }
for calling members of CompilerInfo. Demand value: LinkDemand; Associated PermissionState enumeration value: Unrestricted.
Available since 2.0