AssemblyBuilder クラス
動的アセンブリを定義および表現します。
この型のすべてのメンバの一覧については、AssemblyBuilder メンバ を参照してください。
System.Object
System.Reflection.Assembly
System.Reflection.Emit.AssemblyBuilder
NotInheritable Public Class AssemblyBuilder
Inherits Assembly
[C#]
public sealed class AssemblyBuilder : Assembly
[C++]
public __gc __sealed class AssemblyBuilder : public Assembly
[JScript]
public class AssemblyBuilder extends Assembly
スレッドセーフ
Reflection Emit は、Boolean パラメータ isSynchronized を true に設定して呼び出した AppDomain.DefineDynamicAssembly メソッドで作成されたアセンブリを使用する場合は、スレッド セーフです。
解説
動的アセンブリは、Reflection Emit API を使用して作成されたアセンブリです。 Save メソッドを使用して動的アセンブリが保存されるときに、動的モジュールがアセンブリに保存されます。実行可能ファイルを生成するには、 SetEntryPoint メソッドを呼び出して、アセンブリへのエントリ ポイントであるメソッドを識別する必要があります。アセンブリは、既定ではダイナミック リンク ライブラリ (DLL) として保存されますが、 SetEntryPoint を使用して、コンソール アプリケーションまたは Windows ベースのアプリケーションを生成するように要求できます。
動的アセンブリに複数の動的モジュールが含まれている場合、そのアセンブリのマニフェスト ファイル名は、 DefineDynamicModule の最初の引数に指定されているモジュール名に一致する必要があります。
GetModules および GetLoadedModules などの基本クラス Assembly のメソッドの中には、 AssemblyBuilder オブジェクトが呼び出されたときに正しく動作しないものがあります。定義された動的アセンブリを読み込み、読み込まれたアセンブリに対してメソッドを呼び出します。たとえば、返されたモジュール リストにリソース モジュールが含まれているようにするには、読み込まれた Assembly オブジェクトに対して GetModules を呼び出します。 KeyPair を使用した動的アセンブリへの署名は、アセンブリがディスクに保存されるまで有効ではありません。したがって、遷移動的アセンブリでは厳密な名前が機能しません。
必要条件
名前空間: System.Reflection.Emit
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ
アセンブリ: Mscorlib (Mscorlib.dll 内)
.NET Framework セキュリティ:
- ReflectionPermission (Type.InvokeMember などの機構を通じて遅延バインディングで呼び出すときに必要なアクセス許可) ReflectionPermissionFlag.MemberAccess (関連する列挙体)