Activator.CreateComInstanceFrom メソッド

定義

名前を指定した COM オブジェクトのインスタンスを作成します。

オーバーロード

CreateComInstanceFrom(String, String)

名前を指定したアセンブリ ファイルと、パラメーターなしのコンストラクターを使用して、名前を指定した COM オブジェクトのインスタンスを作成します。

CreateComInstanceFrom(String, String, Byte[], AssemblyHashAlgorithm)

名前を指定したアセンブリ ファイルと、パラメーターなしのコンストラクターを使用して、名前を指定した COM オブジェクトのインスタンスを作成します。

CreateComInstanceFrom(String, String)

名前を指定したアセンブリ ファイルと、パラメーターなしのコンストラクターを使用して、名前を指定した COM オブジェクトのインスタンスを作成します。

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateComInstanceFrom(System::String ^ assemblyName, System::String ^ typeName);
public static System.Runtime.Remoting.ObjectHandle CreateComInstanceFrom (string assemblyName, string typeName);
static member CreateComInstanceFrom : string * string -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateComInstanceFrom (assemblyName As String, typeName As String) As ObjectHandle

パラメーター

assemblyName
String

typeName という名前の型をシークする場所となるアセンブリが含まれているファイルの名前。

typeName
String

インスタンスを作成する型の名前。

戻り値

新しく作成されたオブジェクトまたはnullNullable<T>インスタンスにアクセスするためにラップ解除する必要があるハンドル。

例外

typeName または assemblyNamenull です。

COM を使用してインスタンスを作成できません。

- または -

typenameassemblyName で見つかりませんでした。

一致するコンストラクターが見つかりませんでした。

assemblyName が見つからないか、読み込もうとしているモジュールにファイル名拡張子が指定されていません。

抽象クラスのインスタンスを作成できません。

- または -

このメンバーは、遅延バインディング メカニズムで呼び出されました。

呼び出し元は、MarshalByRefObject を継承しないオブジェクトのアクティベーション属性を提供できません。

assemblyName が空の文字列 ("") です。

注釈

戻り値の ObjectHandle.Unwrap ラップを解除するには、 メソッドを使用します。

System.Runtime.InteropServices.ComVisibleAttribute値が のtrue属性は、明示的に、または既定で COM 型に適用して、メソッドがその型のインスタンスを作成できるようにするCreateComInstanceFrom必要があります。それ以外の場合は がTypeLoadExceptionスローされます。

呼び出されたメソッドによってスローされるその他の例外については、 メソッドと CreateInstance メソッドの例外に関するセクションをAssembly.LoadFrom参照してください。

Note

.NET Framework 2.0 以降では、このメソッドを使用して、呼び出し元が フラグを使用ReflectionPermissionFlag.RestrictedMemberAccessして許可ReflectionPermissionされている場合、および非パブリック型を含むアセンブリの許可セットが呼び出し元の許可セットまたはそのサブセットに制限されている場合に、非パブリック型を作成できます。 (リフレクションのセキュリティに関する考慮事項に関するページを参照してください)。この機能を使用するには、アプリケーションで 3.5 以降.NET Frameworkターゲットにする必要があります。

適用対象

CreateComInstanceFrom(String, String, Byte[], AssemblyHashAlgorithm)

名前を指定したアセンブリ ファイルと、パラメーターなしのコンストラクターを使用して、名前を指定した COM オブジェクトのインスタンスを作成します。

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateComInstanceFrom(System::String ^ assemblyName, System::String ^ typeName, cli::array <System::Byte> ^ hashValue, System::Configuration::Assemblies::AssemblyHashAlgorithm hashAlgorithm);
public static System.Runtime.Remoting.ObjectHandle CreateComInstanceFrom (string assemblyName, string typeName, byte[] hashValue, System.Configuration.Assemblies.AssemblyHashAlgorithm hashAlgorithm);
static member CreateComInstanceFrom : string * string * byte[] * System.Configuration.Assemblies.AssemblyHashAlgorithm -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateComInstanceFrom (assemblyName As String, typeName As String, hashValue As Byte(), hashAlgorithm As AssemblyHashAlgorithm) As ObjectHandle

パラメーター

assemblyName
String

typeName という名前の型をシークする場所となるアセンブリが含まれているファイルの名前。

typeName
String

インスタンスを作成する型の名前。

hashValue
Byte[]

計算されたハッシュ コードの値。

hashAlgorithm
AssemblyHashAlgorithm

ファイルのハッシュ処理および厳密な名前の生成に使用されるハッシュ アルゴリズム。

戻り値

新しく作成されたオブジェクトまたはnullNullable<T>インスタンスにアクセスするためにラップ解除する必要があるハンドル。

例外

typeName または assemblyNamenull です。

assemblyName が空の文字列 ("") です。

アセンブリまたはモジュールが、2 つの異なる証拠を使用して 2 回読み込まれました。

- または -

assemblyName がシステム定義の最大長を超えています。

assemblyName が見つからないか、読み込もうとしているモジュールにファイル名拡張子が指定されていません。

assemblyName が見つかりましたが、読み込めません。

assemblyName は有効なアセンブリではありません。

"file://" で始まっていないコードベースが、必須の WebPermission なしで指定されました。

COM を使用してインスタンスを作成できません。

- または -

typenameassemblyName で見つかりませんでした。

一致するコンストラクターが見つかりませんでした。

抽象クラスのインスタンスを作成できません。

- または -

このメンバーは、遅延バインディング メカニズムで呼び出されました。

呼び出し元は、MarshalByRefObject を継承しないオブジェクトのアクティベーション属性を提供できません。

注釈

戻り値の ObjectHandle.Unwrap ラップを解除するには、 メソッドを使用します。

System.Runtime.InteropServices.ComVisibleAttribute値が のtrue属性は、明示的に、または既定で COM 型に適用して、メソッドがその型のインスタンスを作成できるようにするCreateComInstanceFrom必要があります。それ以外の場合は がTypeLoadExceptionスローされます。

呼び出されたメソッドによってスローされるその他の例外については、 メソッドと CreateInstance メソッドの例外に関するセクションをAssembly.LoadFrom参照してください。

Note

.NET Framework 2.0 以降では、このメソッドを使用して、呼び出し元が フラグを使用ReflectionPermissionFlag.RestrictedMemberAccessして許可ReflectionPermissionされている場合、および非パブリック型を含むアセンブリの許可セットが呼び出し元の許可セットまたはそのサブセットに制限されている場合に、非パブリック型を作成できます。 (リフレクションのセキュリティに関する考慮事項に関するページを参照してください)。この機能を使用するには、アプリケーションで 3.5 以降.NET Frameworkターゲットにする必要があります。

適用対象