Activator クラス
オブジェクトの型をローカル サイトまたはリモート サイトに作成するメソッド、または既存のリモート オブジェクトへの参照を取得するメソッドを保持します。
この型のすべてのメンバの一覧については、Activator メンバ を参照してください。
System.Object
System.Activator
NotInheritable Public Class Activator
[C#]
public sealed class Activator
[C++]
public __gc __sealed class Activator
[JScript]
public class Activator
スレッドセーフ
この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。
解説
CreateInstance メソッドは、指定した引数に最も一致するコンストラクタを呼び出して、アセンブリで定義された型のインスタンスを作成します。引数を指定しなかった場合は、パラメータをとらないコンストラクタ、つまり既定のコンストラクタが呼び出されます。
コンストラクタを検索したり呼び出したりするための十分なアクセス許可を持っている必要があります。十分なアクセス許可がない場合は、例外がスローされます。既定では、コンストラクタの検索では、パブリック コンストラクタだけが検索の対象になります。一致するコンストラクタも既定のコンストラクタも見つからない場合は、例外がスローされます。
バインダ パラメータは、アセンブリで適切なコンストラクタを検索するオブジェクトを指定します。独自のバインダおよび検索条件を指定できますが、バインダを指定しなかった場合は、既定のバインダが使用されます。詳細については、 System.Reflection.Binder クラスと System.Reflection.BindingFlags クラスの各トピックを参照してください。
証拠パラメータは、コンストラクタのセキュリティ ポリシーとアクセス許可に影響を与えます。詳細については、 System.Security.Policy.Evidence クラスのトピックを参照してください。
型のインスタンスは、ローカル サイトまたはリモート サイトで作成できます。型をリモート サイトで作成する場合、アクティベーション属性パラメータではそのリモート サイトの URI を指定します。リモート サイトに到達する前に、インスタンスを作成するための呼び出しは中間サイトを通過することがあります。その他のアクティベーション属性は、リモート サイトと中間サイトで呼び出しが動作する環境 (コンテキスト) を変更できます。
インスタンスをローカル サイトで作成した場合は、そのオブジェクトへの参照が返されます。インスタンスをリモート サイトで作成した場合は、プロキシへの参照が返されます。リモート オブジェクトは、ローカル オブジェクトであるかのように、プロキシを通じて操作されます。
GetObject メソッドは、現在実行しているリモート オブジェクト、サーバー側でアクティブ化される既知のオブジェクト、または XML Web サービスに対してプロキシを作成します。接続メディア、つまりチャネルを指定できます。詳細については、 System.Runtime.Remoting.Channels.ChannelServices クラスのトピックを参照してください。
アセンブリは、型定義を格納します。 CreateInstance メソッドは、現在実行しているアセンブリから型のインスタンスを作成します。 CreateInstanceFrom メソッドは、アセンブリを格納しているファイルからインスタンスを作成します。 CreateComInstanceFrom メソッドは、アセンブリを格納しているファイルから COM オブジェクトのインスタンスを作成します。
サーバー側でアクティブ化されるオブジェクトとクライアント側でアクティブ化されるオブジェクトの詳細については、「 サーバー アクティベーション 」を参照してください。
必要条件
名前空間: System
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET
アセンブリ: Mscorlib (Mscorlib.dll 内)