AssemblyBuilder.DefineDynamicModule メソッド (String, Boolean)
アセンブリ: mscorlib (mscorlib.dll 内)

Public Function DefineDynamicModule ( _ name As String, _ emitSymbolInfo As Boolean _ ) As ModuleBuilder
Dim instance As AssemblyBuilder Dim name As String Dim emitSymbolInfo As Boolean Dim returnValue As ModuleBuilder returnValue = instance.DefineDynamicModule(name, emitSymbolInfo)
戻り値
定義する動的モジュールを表す ModuleBuilder。


1 つのアセンブリに同じ名前で複数の動的モジュールを定義するとエラーになります。
親の動的アセンブリが RunAndSave で作成されていても、動的モジュールは保存されません。
![]() |
---|
動的モジュールのデバッグ時に最適化を行わないようにするには、DefineDynamicModule を呼び出す前に、その動的アセンブリに対して DebuggableAttribute 属性を適用します。DisableOptimizations フラグを指定して DebuggableAttribute のインスタンスを作成し、SetCustomAttribute メソッドを使用してそれを適用します。この属性は、動的アセンブリに適用する必要があります。モジュールに適用しても効果はありません。 |

DefineDynamicModule を使用して、遷移動的モジュールを作成する方法を次のコード例に示します。このとき、シンボル情報は出力しません。
Dim myAppDomain As AppDomain = Thread.GetDomain() Dim myAsmName As New AssemblyName() myAsmName.Name = "MyAssembly" Dim myAsmBuilder As AssemblyBuilder = myAppDomain.DefineDynamicAssembly(myAsmName, _ AssemblyBuilderAccess.Run) ' Create a transient dynamic module. Since no DLL name is specified with ' this constructor, it can not be saved. By specifying the second parameter ' of the constructor as false, we can suppress the emission of symbol info. Dim myModuleBuilder As ModuleBuilder = myAsmBuilder.DefineDynamicModule("MyModule2", _ False)
AppDomain myAppDomain = Thread.GetDomain(); AssemblyName myAsmName = new AssemblyName(); myAsmName.Name = "MyAssembly"; AssemblyBuilder myAsmBuilder = myAppDomain.DefineDynamicAssembly( myAsmName, AssemblyBuilderAccess.Run); // Create a transient dynamic module. Since no DLL name is specified with // this constructor, it can not be saved. By specifying the second parameter // of the constructor as false, we can suppress the emission of symbol info. ModuleBuilder myModuleBuilder = myAsmBuilder.DefineDynamicModule("MyModule2" , false);
AppDomain^ myAppDomain = Thread::GetDomain(); AssemblyName^ myAsmName = gcnew AssemblyName; myAsmName->Name = "MyAssembly"; AssemblyBuilder^ myAsmBuilder = myAppDomain->DefineDynamicAssembly( myAsmName, AssemblyBuilderAccess::Run ); // Create a transient dynamic module. Since no DLL name is specified with // this constructor, it can not be saved. By specifying the second parameter // of the constructor as false, we can suppress the emission of symbol info. ModuleBuilder^ myModuleBuilder = myAsmBuilder->DefineDynamicModule( "MyModule2", false );
AppDomain myAppDomain = System.Threading.Thread.GetDomain(); AssemblyName myAsmName = new AssemblyName(); myAsmName.set_Name("MyAssembly"); AssemblyBuilder myAsmBuilder = myAppDomain.DefineDynamicAssembly( myAsmName, AssemblyBuilderAccess.Run); // Create a transient dynamic module. Since no DLL name is specified // with this constructor, it can not be saved. By specifying the // second parameter of the constructor as false, we can suppress // the emission of symbol info. ModuleBuilder myModuleBuilder = myAsmBuilder.DefineDynamicModule( "MyModule2", false);


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


AssemblyBuilder.DefineDynamicModule メソッド (String)
アセンブリ: mscorlib (mscorlib.dll 内)

Dim instance As AssemblyBuilder Dim name As String Dim returnValue As ModuleBuilder returnValue = instance.DefineDynamicModule(name)
戻り値
定義する動的モジュールを表す ModuleBuilder。


1 つのアセンブリに同じ名前で複数の動的モジュールを定義するとエラーになります。
定義する動的モジュールは遷移的です。親の動的アセンブリが RunAndSave で作成されていても、動的モジュールは保存されません。
![]() |
---|
動的モジュールのデバッグ時に最適化を行わないようにするには、DefineDynamicModule を呼び出す前に、その動的アセンブリに対して DebuggableAttribute 属性を適用します。DisableOptimizations フラグを指定して DebuggableAttribute のインスタンスを作成し、SetCustomAttribute メソッドを使用してそれを適用します。この属性は、動的アセンブリに適用する必要があります。モジュールに適用しても効果はありません。 |

DefineDynamicModule を使用して、遷移動的モジュールを作成する方法を次のコード例に示します。
Dim myAppDomain As AppDomain = Thread.GetDomain() Dim myAsmName As New AssemblyName() myAsmName.Name = "MyAssembly" Dim myAsmBuilder As AssemblyBuilder = myAppDomain.DefineDynamicAssembly(myAsmName, _ AssemblyBuilderAccess.Run) ' Create a transient dynamic module. Since no DLL name is specified with ' this constructor, it can not be saved. Dim myModuleBuilder As ModuleBuilder = myAsmBuilder.DefineDynamicModule("MyModule1")
AppDomain myAppDomain = Thread.GetDomain(); AssemblyName myAsmName = new AssemblyName(); myAsmName.Name = "MyAssembly"; AssemblyBuilder myAsmBuilder = myAppDomain.DefineDynamicAssembly( myAsmName, AssemblyBuilderAccess.Run); // Create a transient dynamic module. Since no DLL name is specified with // this constructor, it can not be saved. ModuleBuilder myModuleBuilder = myAsmBuilder.DefineDynamicModule("MyModule1");
AppDomain^ myAppDomain = Thread::GetDomain(); AssemblyName^ myAsmName = gcnew AssemblyName; myAsmName->Name = "MyAssembly"; AssemblyBuilder^ myAsmBuilder = myAppDomain->DefineDynamicAssembly( myAsmName, AssemblyBuilderAccess::Run ); // Create a transient dynamic module. Since no DLL name is specified with // this constructor, it cannot be saved. ModuleBuilder^ myModuleBuilder = myAsmBuilder->DefineDynamicModule( "MyModule1" );
AppDomain myAppDomain = System.Threading.Thread.GetDomain(); AssemblyName myAsmName = new AssemblyName(); myAsmName.set_Name("MyAssembly"); AssemblyBuilder myAsmBuilder = myAppDomain.DefineDynamicAssembly( myAsmName, AssemblyBuilderAccess.Run); // Create a transient dynamic module. Since no DLL name is specified // with this constructor, it can not be saved. ModuleBuilder myModuleBuilder = myAsmBuilder.DefineDynamicModule("MyModule1");


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


AssemblyBuilder.DefineDynamicModule メソッド

名前 | 説明 |
---|---|
AssemblyBuilder.DefineDynamicModule (String) | このアセンブリに名前付き遷移動的モジュールを定義します。 |
AssemblyBuilder.DefineDynamicModule (String, Boolean) | このアセンブリに名前付き遷移動的モジュールを定義し、シンボル情報を作成するかどうかを指定します。 |
AssemblyBuilder.DefineDynamicModule (String, String) | 指定したファイルに保存される指定した名前の持続可能動的モジュールを定義します。シンボル情報は作成されません。 |
AssemblyBuilder.DefineDynamicModule (String, String, Boolean) | モジュール名、モジュールの保存先ファイルの名前、既定のシンボル ライタを使用してシンボル情報を出力するかどうかを指定して、持続可能動的モジュールを定義します。 |

AssemblyBuilder.DefineDynamicModule メソッド (String, String, Boolean)
アセンブリ: mscorlib (mscorlib.dll 内)

Public Function DefineDynamicModule ( _ name As String, _ fileName As String, _ emitSymbolInfo As Boolean _ ) As ModuleBuilder
Dim instance As AssemblyBuilder Dim name As String Dim fileName As String Dim emitSymbolInfo As Boolean Dim returnValue As ModuleBuilder returnValue = instance.DefineDynamicModule(name, fileName, emitSymbolInfo)
public function DefineDynamicModule ( name : String, fileName : String, emitSymbolInfo : boolean ) : ModuleBuilder
戻り値
定義する動的モジュールを表す ModuleBuilder オブジェクト。


持続可能動的モジュールを定義するには、このアセンブリが Save 属性または RunAndSave 属性で作成されている必要があります。
動的アセンブリに複数の動的モジュールが含まれている場合、そのアセンブリのマニフェスト ファイル名は、DefineDynamicModule の最初の引数に指定されているモジュール名に一致する必要があります。
![]() |
---|
動的モジュールのデバッグ時に最適化を行わないようにするには、DefineDynamicModule を呼び出す前に、その動的アセンブリに対して DebuggableAttribute 属性を適用します。DisableOptimizations フラグを指定して DebuggableAttribute のインスタンスを作成し、SetCustomAttribute メソッドを使用してそれを適用します。この属性は、動的アセンブリに適用する必要があります。モジュールに適用しても効果はありません。 |

DefineDynamicModule を使用して、シンボル出力付きで持続可能動的モジュールを作成する方法を次のコード例に示します。
Dim myAppDomain As AppDomain = Thread.GetDomain() Dim myAsmName As New AssemblyName() myAsmName.Name = "MyAssembly" Dim myAsmBuilder As AssemblyBuilder = myAppDomain.DefineDynamicAssembly(myAsmName, _ AssemblyBuilderAccess.Run) ' Create a dynamic module that can be saved as the specified DLL name. By ' specifying the third parameter as true, we can allow the emission of symbol info. Dim myModuleBuilder As ModuleBuilder = myAsmBuilder.DefineDynamicModule("MyModule4", _ "MyModule4.dll", _ True)
AppDomain myAppDomain = Thread.GetDomain(); AssemblyName myAsmName = new AssemblyName(); myAsmName.Name = "MyAssembly"; AssemblyBuilder myAsmBuilder = myAppDomain.DefineDynamicAssembly( myAsmName, AssemblyBuilderAccess.Run); // Create a dynamic module that can be saved as the specified DLL name. By // specifying the third parameter as true, we can allow the emission of symbol info. ModuleBuilder myModuleBuilder = myAsmBuilder.DefineDynamicModule("MyModule4" , "MyModule4.dll", true);
AppDomain^ myAppDomain = Thread::GetDomain(); AssemblyName^ myAsmName = gcnew AssemblyName; myAsmName->Name = "MyAssembly"; AssemblyBuilder^ myAsmBuilder = myAppDomain->DefineDynamicAssembly( myAsmName, AssemblyBuilderAccess::Run ); // Create a dynamic module that can be saved as the specified DLL name. By // specifying the third parameter as true, we can allow the emission of symbol info. ModuleBuilder^ myModuleBuilder = myAsmBuilder->DefineDynamicModule( "MyModule4", "MyModule4.dll", true );
AppDomain myAppDomain = System.Threading.Thread.GetDomain(); AssemblyName myAsmName = new AssemblyName(); myAsmName.set_Name("MyAssembly"); AssemblyBuilder myAsmBuilder = myAppDomain.DefineDynamicAssembly( myAsmName, AssemblyBuilderAccess.Run); // Create a dynamic module that can be saved as the specified DLL name. // By specifying the third parameter as true, we can allow the emission // of symbol info. ModuleBuilder myModuleBuilder = myAsmBuilder.DefineDynamicModule( "MyModule4", "MyModule4.dll", true);


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


AssemblyBuilder.DefineDynamicModule メソッド (String, String)
アセンブリ: mscorlib (mscorlib.dll 内)

Dim instance As AssemblyBuilder Dim name As String Dim fileName As String Dim returnValue As ModuleBuilder returnValue = instance.DefineDynamicModule(name, fileName)
戻り値
定義する動的モジュールを表す ModuleBuilder オブジェクト。


持続可能動的モジュールを定義するには、このアセンブリが Save 属性または RunAndSave 属性で作成されている必要があります。
動的アセンブリに複数の動的モジュールが含まれている場合、そのアセンブリのマニフェスト ファイル名は、DefineDynamicModule の最初の引数に指定されているモジュール名に一致する必要があります。
![]() |
---|
動的モジュールのデバッグ時に最適化を行わないようにするには、DefineDynamicModule を呼び出す前に、その動的アセンブリに対して DebuggableAttribute 属性を適用します。DisableOptimizations フラグを指定して DebuggableAttribute のインスタンスを作成し、SetCustomAttribute メソッドを使用してそれを適用します。この属性は、動的アセンブリに適用する必要があります。モジュールに適用しても効果はありません。 |

DefineDynamicModule を使用して、持続可能動的モジュールを作成する方法を次のコード例に示します。
Dim myAppDomain As AppDomain = Thread.GetDomain() Dim myAsmName As New AssemblyName() myAsmName.Name = "MyAssembly" Dim myAsmBuilder As AssemblyBuilder = myAppDomain.DefineDynamicAssembly(myAsmName, _ AssemblyBuilderAccess.Run) ' Create a dynamic module that can be saved as the specified DLL name. Dim myModuleBuilder As ModuleBuilder = myAsmBuilder.DefineDynamicModule("MyModule3", _ "MyModule3.dll")
AppDomain myAppDomain = Thread.GetDomain(); AssemblyName myAsmName = new AssemblyName(); myAsmName.Name = "MyAssembly"; AssemblyBuilder myAsmBuilder = myAppDomain.DefineDynamicAssembly( myAsmName, AssemblyBuilderAccess.Run); // Create a dynamic module that can be saved as the specified DLL name. ModuleBuilder myModuleBuilder = myAsmBuilder.DefineDynamicModule("MyModule3" , "MyModule3.dll");
AppDomain^ myAppDomain = Thread::GetDomain(); AssemblyName^ myAsmName = gcnew AssemblyName; myAsmName->Name = "MyAssembly"; AssemblyBuilder^ myAsmBuilder = myAppDomain->DefineDynamicAssembly( myAsmName, AssemblyBuilderAccess::Run ); // Create a dynamic module that can be saved as the specified DLL name. ModuleBuilder^ myModuleBuilder = myAsmBuilder->DefineDynamicModule( "MyModule3", "MyModule3.dll" );
AppDomain myAppDomain = System.Threading.Thread.GetDomain(); AssemblyName myAsmName = new AssemblyName(); myAsmName.set_Name("MyAssembly"); AssemblyBuilder myAsmBuilder = myAppDomain.DefineDynamicAssembly( myAsmName, AssemblyBuilderAccess.Run); // Create a dynamic module that can be saved as the specified DLL name. ModuleBuilder myModuleBuilder = myAsmBuilder.DefineDynamicModule( "MyModule3", "MyModule3.dll");


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- AssemblyBuilder.DefineDynamicModule メソッドのページへのリンク