Activator.CreateComInstanceFrom Metoda

Definice

Vytvoří instanci objektu COM, jehož název je zadán.

Přetížení

CreateComInstanceFrom(String, String)

Vytvoří instanci objektu COM, jehož název je zadán, pomocí pojmenovaného souboru sestavení a konstruktoru bez parametrů.

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

Vytvoří instanci objektu COM, jehož název je zadán, pomocí pojmenovaného souboru sestavení a konstruktoru bez parametrů.

CreateComInstanceFrom(String, String)

Vytvoří instanci objektu COM, jehož název je zadán, pomocí pojmenovaného souboru sestavení a konstruktoru bez parametrů.

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

Parametry

assemblyName
String

Název souboru, který obsahuje sestavení, ve kterém je typ s názvem typeName hledán.

typeName
String

Název typu, pro který se má vytvořit instance.

Návraty

Popisovač, který musí být rozbalený pro přístup k nově vytvořenému objektu nebo null pro Nullable<T> instance.

Výjimky

typeName nebo assemblyName je null.

Instanci nelze vytvořit prostřednictvím modelu COM.

-nebo-

typename nebyla nalezena v assemblyName.

Nebyl nalezen žádný odpovídající konstruktor.

assemblyName nebyl nalezen nebo modul, který se pokoušíte načíst, neurčuje příponu názvu souboru.

Nelze vytvořit instanci abstraktní třídy.

-nebo-

Tento člen byl vyvolán pomocí mechanismu pozdní vazby.

Volající nemůže poskytnout atributy aktivace pro objekt, který nedědí z MarshalByRefObject.

assemblyName je prázdný řetězec ("").

Poznámky

K rozbalení návratové ObjectHandle.Unwrap hodnoty použijte metodu .

Atribut System.Runtime.InteropServices.ComVisibleAttribute s hodnotou true musí být použit buď explicitně, nebo ve výchozím nastavení na typ COM, aby CreateComInstanceFrom metoda mohl vytvořit instanci tohoto typu. TypeLoadException V opačném případě je vyvolán.

Informace o dalších výjimkách, které mohou být vyvolány metodami naleznete v části Assembly.LoadFrom Výjimky metody a CreateInstance .

Poznámka

Počínaje rozhraním .NET Framework 2.0 lze tuto metodu použít k vytvoření neveřejných typů, pokud volajícímu byl udělen ReflectionPermissionReflectionPermissionFlag.RestrictedMemberAccess příznak a pokud je sada udělení sestavení obsahující neveřejné typy omezena na sadu udělení volajícího nebo její podmnožinu. (Viz Aspekty zabezpečení pro reflexi.) Pokud chcete tuto funkci používat, měla by vaše aplikace cílit na rozhraní .NET Framework 3.5 nebo novější.

Platí pro

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

Vytvoří instanci objektu COM, jehož název je zadán, pomocí pojmenovaného souboru sestavení a konstruktoru bez parametrů.

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

Parametry

assemblyName
String

Název souboru, který obsahuje sestavení, ve kterém je typ s názvem typeName hledán.

typeName
String

Název typu, pro který se má vytvořit instance.

hashValue
Byte[]

Hodnota vypočítaného hashového kódu.

hashAlgorithm
AssemblyHashAlgorithm

Hashovací algoritmus používaný k hashování souborů a generování silného názvu.

Návraty

Popisovač, který musí být rozbalený pro přístup k nově vytvořenému objektu nebo null pro Nullable<T> instance.

Výjimky

typeName nebo assemblyName je null.

assemblyName je prázdný řetězec ("").

Sestavení nebo modul byly zavedeny dvakrát se dvěma různými legitimacemi.

-nebo-

assemblyName je delší než systémem definovaná maximální délka.

assemblyName nebyl nalezen nebo modul, který se pokoušíte načíst, neurčuje příponu názvu souboru.

assemblyName byl nalezen, ale nelze ho načíst.

assemblyName není platné sestavení.

Základ kódu, který nezačíná na "file://", byl zadán bez požadovaného WebPermissionznaku .

Instanci nelze vytvořit prostřednictvím modelu COM.

-nebo-

typename nebyla nalezena v assemblyName.

Nebyl nalezen žádný odpovídající konstruktor.

Instanci abstraktní třídy nelze vytvořit.

-nebo-

Tento člen byl vyvolán pomocí mechanismu pozdní vazby.

Volající nemůže poskytnout atributy aktivace pro objekt, který nedědí z MarshalByRefObject.

Poznámky

K rozbalení návratové ObjectHandle.Unwrap hodnoty použijte metodu .

Atribut System.Runtime.InteropServices.ComVisibleAttribute s hodnotou true musí být použit buď explicitně, nebo ve výchozím nastavení na typ COM, aby CreateComInstanceFrom metoda mohl vytvořit instanci tohoto typu. TypeLoadException V opačném případě je vyvolán.

Informace o dalších výjimkách, které mohou být vyvolány metodami naleznete v části Assembly.LoadFrom Výjimky metody a CreateInstance .

Poznámka

Počínaje rozhraním .NET Framework 2.0 lze tuto metodu použít k vytvoření neveřejných typů, pokud volajícímu byl udělen ReflectionPermissionReflectionPermissionFlag.RestrictedMemberAccess příznak a pokud je sada udělení sestavení obsahující neveřejné typy omezena na sadu udělení volajícího nebo její podmnožinu. (Viz Aspekty zabezpečení pro reflexi.) Pokud chcete tuto funkci používat, měla by vaše aplikace cílit na rozhraní .NET Framework 3.5 nebo novější.

Platí pro