Activator.CreateComInstanceFrom Methode

Definition

Erstellt eine Instanz des COM-Objekts, dessen Name angegeben ist.

Überlädt

Name Beschreibung
CreateComInstanceFrom(String, String)

Erstellt eine Instanz des COM-Objekts, dessen Name angegeben ist, mithilfe der benannten Assemblydatei und des parameterlosen Konstruktors.

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

Erstellt eine Instanz des COM-Objekts, dessen Name angegeben ist, mithilfe der benannten Assemblydatei und des parameterlosen Konstruktors.

CreateComInstanceFrom(String, String)

Erstellt eine Instanz des COM-Objekts, dessen Name angegeben ist, mithilfe der benannten Assemblydatei und des parameterlosen Konstruktors.

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

Parameter

assemblyName
String

Der Name einer Datei, die eine Assembly enthält, in der der benannte typeName Typ gesucht wird.

typeName
String

Der Name des Typs, von dem eine Instanz erstellt werden soll.

Gibt zurück

Ein Handle, das für den Zugriff auf das neu erstellte Objekt oder null für Nullable<T> Instanzen entwappt werden muss.

Ausnahmen

typeName oder assemblyName ist null.

Eine Instanz kann nicht über COM erstellt werden.

-oder-

typeName wurde nicht gefunden in assemblyName.

Es wurde kein übereinstimmende Konstruktor gefunden.

assemblyName wird nicht gefunden, oder das Modul, das Sie laden möchten, gibt keine Dateinamenerweiterung an.

Eine Instanz einer abstrakten Klasse kann nicht erstellt werden.

-oder-

Dieses Element wurde mit einem Spätbindungsmechanismus aufgerufen.

Der Aufrufer kann keine Aktivierungsattribute für ein Objekt bereitstellen, das nicht von MarshalByRefObject.

assemblyName ist die leere Zeichenfolge ("").

Hinweise

Verwenden Sie die ObjectHandle.Unwrap Methode, um den Rückgabewert aufzuheben.

Ein System.Runtime.InteropServices.ComVisibleAttribute Attribut mit einem Wert von true muss entweder explizit oder standardmäßig auf den COM-Typ angewendet werden, CreateComInstanceFrom damit die TypeLoadException Methode eine Instanz dieses Typs erstellen kann; andernfalls wird ausgelöst.

Informationen zu anderen Ausnahmen, die von aufgerufenen Methoden ausgelöst werden können, finden Sie im Abschnitt "Ausnahmen" der und Assembly.LoadFrom der CreateInstance Methoden.

Note

Diese Methode kann verwendet werden, um nichtublice Typen zu erstellen, wenn der Aufrufer mit dem ReflectionPermission Flag erteilt ReflectionPermissionFlag.RestrictedMemberAccess wurde und wenn der Grant-Satz der Assembly, die die nichtublicen Typen enthält, auf den Grant-Satz des Aufrufers oder auf eine Teilmenge davon beschränkt ist. (Siehe Security Considerations for Reflection.) Um diese Funktionalität zu verwenden, sollte Ihre Anwendung auf .NET Framework 3.5 oder höher abzielen.

Gilt für:

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

Erstellt eine Instanz des COM-Objekts, dessen Name angegeben ist, mithilfe der benannten Assemblydatei und des parameterlosen Konstruktors.

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

Parameter

assemblyName
String

Der Name einer Datei, die eine Assembly enthält, in der der benannte typeName Typ gesucht wird.

typeName
String

Der Name des Typs, von dem eine Instanz erstellt werden soll.

hashValue
Byte[]

Der Wert des berechneten Hashcodes.

hashAlgorithm
AssemblyHashAlgorithm

Der Hashalgorithmus, der zum Hashing von Dateien und zum Generieren des starken Namens verwendet wird.

Gibt zurück

Ein Handle, das für den Zugriff auf das neu erstellte Objekt oder null für Nullable<T> Instanzen entwappt werden muss.

Ausnahmen

typeName oder assemblyName ist null.

assemblyName ist die leere Zeichenfolge ("").

Eine Assembly oder ein Modul wurde zweimal mit zwei verschiedenen Nachweisen geladen.

-oder-

assemblyName ist länger als die vom System definierte maximale Länge.

assemblyName wird nicht gefunden, oder das Modul, das Sie laden möchten, gibt keine Dateinamenerweiterung an.

assemblyName gefunden, aber nicht geladen werden kann.

assemblyName ist keine gültige Assembly.

Eine Codebasis, die nicht mit "file://" beginnt, wurde ohne die erforderliche WebPermissionAngabe angegeben.

Eine Instanz kann nicht über COM erstellt werden.

-oder-

typeName wurde nicht gefunden in assemblyName.

Es wurde kein übereinstimmende Konstruktor gefunden.

Eine Instanz einer abstrakten Klasse kann nicht erstellt werden.

-oder-

Dieses Element wurde mit einem Spätbindungsmechanismus aufgerufen.

Der Aufrufer kann keine Aktivierungsattribute für ein Objekt bereitstellen, das nicht von MarshalByRefObject.

Hinweise

Verwenden Sie die ObjectHandle.Unwrap Methode, um den Rückgabewert aufzuheben.

Ein System.Runtime.InteropServices.ComVisibleAttribute Attribut mit einem Wert von true muss entweder explizit oder standardmäßig auf den COM-Typ angewendet werden, CreateComInstanceFrom damit die TypeLoadException Methode eine Instanz dieses Typs erstellen kann; andernfalls wird ausgelöst.

Informationen zu anderen Ausnahmen, die von aufgerufenen Methoden ausgelöst werden können, finden Sie im Abschnitt "Ausnahmen" der und Assembly.LoadFrom der CreateInstance Methoden.

Note

Diese Methode kann verwendet werden, um nichtublice Typen zu erstellen, wenn der Aufrufer mit dem ReflectionPermission Flag erteilt ReflectionPermissionFlag.RestrictedMemberAccess wurde und wenn der Grant-Satz der Assembly, die die nichtublicen Typen enthält, auf den Grant-Satz des Aufrufers oder auf eine Teilmenge davon beschränkt ist. (Siehe Security Considerations for Reflection.) Um diese Funktionalität zu verwenden, sollte Ihre Anwendung auf .NET Framework 3.5 oder höher abzielen.

Gilt für: