CodeDomProvider.CreateProvider メソッドとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > CodeDomProvider.CreateProvider メソッドの意味・解説 

CodeDomProvider.CreateProvider メソッド

メモ : このメソッドは、.NET Framework version 2.0新しく追加されたものです。

指定した言語の CodeDomProvider インスタンス取得します

名前空間: System.CodeDom.Compiler
アセンブリ: System (system.dll 内)
構文構文

<ComVisibleAttribute(False)> _
Public Shared Function CreateProvider
 ( _
    language As String _
) As CodeDomProvider
Dim language As String
Dim returnValue As CodeDomProvider

returnValue = CodeDomProvider.CreateProvider(language)
[ComVisibleAttribute(false)] 
public static CodeDomProvider CreateProvider
 (
    string language
)
[ComVisibleAttribute(false)] 
public:
static CodeDomProvider^ CreateProvider (
    String^ language
)
/** @attribute ComVisibleAttribute(false) */ 
public static CodeDomProvider CreateProvider
 (
    String language
)
ComVisibleAttribute(false) 
public static function CreateProvider
 (
    language : String
) : CodeDomProvider

パラメータ

language

言語名

戻り値
指定した言語名に対して実装される CodeDomProvider インスタンス

例外例外
例外種類条件

ConfigurationException

このコンピュータには、language構成済みプロバイダがありません。

ConfigurationErrorsException

languagenull 参照 (Visual Basic では Nothing) です。

SecurityException

呼び出し元に必要なアクセス許可がありません。

解説解説
メモメモ

ほとんどの場合、このメソッド使用して複数プロバイダいずれかオプション使用できるアプリケーション内に、コード プロバイダインスタンス作成しますCreateProvider使用すると、インスタンス化するコード プロバイダ実行時指定できます使用するコード プロバイダデザイン時にわかっている場合は、CreateProvider メソッド使用するではなく、そのコード プロバイダインスタンス作成します

CreateProvider メソッドは、特定の言語名CodeDomProvider インスタンス返します。これは、言語プロバイダ種類指定して、Activator.CreateInstance メソッド呼び出すことと同様です言語名構成済みプロバイダ実装動的に検索する場合は、CreateProvider使用します

言語名に対して複数プロバイダ実装構成されている場合CreateProvider は、最後に一致する構成要素プロバイダ インスタンス返します

特定の言語プロバイダ実装する必要がある場合は、Activator.CreateInstance(Type,BindingFlags,Binder,Object[],CultureInfo) メソッド オーバーロード使用します。たとえば、CreateProvider メソッド使用して言語名 "CSharp"サポートするプロバイダ インスタンス取得しますActivator.CreateInstance(Type,BindingFlags,Binder,Object[],CultureInfo) メソッド オーバーロード使用して、Microsoft.CSharp.CSharpCodeProvider 実装固有のプロバイダ インスタンス取得します。ある言語複数コード プロバイダがあるときに、特定のコード プロバイダインスタンス化する場合は、Activator.CreateInstance(Type,BindingFlags,Binder,Object[],CultureInfo,Object[]) メソッド使用する必要があります

IsDefinedLanguage メソッドは、少なくとも 1 つプロバイダ実装特定の言語サポートしているどうかをチェックしますCreateProvider言語名を渡す前にIsDefinedLanguage使用してその言語名検証できますサポートされていない言語名CreateProvider に渡すと、System.Configuration.ConfigurationExceptionスローさます。

GetAllCompilerInfo メソッド使用すると、コンピュータ上のすべての CodeDomProvider 実装確認できます。これには、開発者コンパイラ販売元によって提供されマシン構成ファイル (Machine.config) の <system.codedom> 要素識別される追加実装含まれます。

CreateProvider メソッドは、特定の言語CodeDomProvider 実装インスタンス返します

言語名では、大文字と小文字区別されません。

使用例使用例

入力言語CodeDomProvider 実装確認し、その言語プロバイダ構成済み設定表示するコード例次に示します

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
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);
}
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 );
}


.NET Framework のセキュリティ.NET Frameworkセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
CodeDomProvider クラス
CodeDomProvider メンバ
System.CodeDom.Compiler 名前空間
IsDefinedLanguage


このページでは「.NET Framework クラス ライブラリ リファレンス」からCodeDomProvider.CreateProvider メソッドを検索した結果を表示しています。
Weblioに収録されているすべての辞書からCodeDomProvider.CreateProvider メソッドを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からCodeDomProvider.CreateProvider メソッド を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「CodeDomProvider.CreateProvider メソッド」の関連用語

CodeDomProvider.CreateProvider メソッドのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



CodeDomProvider.CreateProvider メソッドのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS