AppDomain.CreateInstance Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vytvoří novou instanci zadaného typu definovaného v zadaném sestavení.
Přetížení
CreateInstance(String, String) |
Vytvoří novou instanci určeného typu definovaného v zadaném sestavení. |
CreateInstance(String, String, Object[]) |
Vytvoří novou instanci určeného typu definovaného v zadaném sestavení. Parametr určuje pole aktivačních atributů. |
CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[]) |
Vytvoří novou instanci určeného typu definovaného v zadaném sestavení. Parametry určují pořadač, příznaky vazby, argumenty konstruktoru, informace specifické pro jazykovou verzi používané k interpretaci argumentů a volitelné aktivační atributy. |
CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence) |
Zastaralé.
Vytvoří novou instanci určeného typu definovaného v zadaném sestavení. Parametry určují pořadač, příznaky vazby, argumenty konstruktoru, informace specifické pro jazykovou verzi používané k interpretaci argumentů, aktivační atributy a autorizaci k vytvoření typu. |
CreateInstance(String, String)
- Zdroj:
- AppDomain.cs
- Zdroj:
- AppDomain.cs
- Zdroj:
- AppDomain.cs
Vytvoří novou instanci určeného typu definovaného v zadaném sestavení.
public:
System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName);
public:
virtual System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName);
public System.Runtime.Remoting.ObjectHandle? CreateInstance (string assemblyName, string typeName);
public System.Runtime.Remoting.ObjectHandle CreateInstance (string assemblyName, string typeName);
member this.CreateInstance : string * string -> System.Runtime.Remoting.ObjectHandle
abstract member CreateInstance : string * string -> System.Runtime.Remoting.ObjectHandle
override this.CreateInstance : string * string -> System.Runtime.Remoting.ObjectHandle
Public Function CreateInstance (assemblyName As String, typeName As String) As ObjectHandle
Parametry
- typeName
- String
Plně kvalifikovaný název požadovaného typu, včetně oboru názvů, ale ne sestavení, jak je vráceno FullName vlastností.
Návraty
Objekt, který je obálkou pro novou instanci určenou pomocí typeName
. Přístup k reálnému objektu lze zajistit pouze pomocí nezabalené návratové hodnoty.
Implementuje
Výjimky
Dojde k pokusu o operaci na uvolněné doméně aplikace.
assemblyName
nebo typeName
je null
.
assemblyName
není platné sestavení pro aktuálně načtený modul runtime.
Sestavení nebo modul byly zavedeny dvakrát se dvěma různými legitimacemi.
assemblyName
nebyl nalezen.
Volající nemá oprávnění k volání tohoto konstruktoru.
Nebyl nalezen žádný odpovídající veřejný konstruktor.
typename
nebyl nalezen v assemblyName
souboru .
Tato instance je null
.
Poznámky
Tato metoda volá konstruktor bez parametrů pro typeName
.
Viz AssemblyName formát assemblyName
.
Pokus o volání CreateInstance v cílové doméně aplikace, která není aktuální doménou aplikace, bude mít za následek úspěšné načtení sestavení v cílové doméně aplikace. Assembly Vzhledem k tomu, že není MarshalByRefObject, když se tato metoda pokusí vrátit Assembly načtené sestavení do aktuální domény aplikace, common language runtime se pokusí načíst sestavení do aktuální domény aplikace a načtení může selhat. Pokud se nastavení cesty pro dvě domény aplikace liší, sestavení načtené do aktuální domény aplikace se může lišit od prvně načteného sestavení.
Viz také
Platí pro
CreateInstance(String, String, Object[])
- Zdroj:
- AppDomain.cs
- Zdroj:
- AppDomain.cs
- Zdroj:
- AppDomain.cs
Vytvoří novou instanci určeného typu definovaného v zadaném sestavení. Parametr určuje pole aktivačních atributů.
public:
System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName, cli::array <System::Object ^> ^ activationAttributes);
public:
virtual System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName, cli::array <System::Object ^> ^ activationAttributes);
public System.Runtime.Remoting.ObjectHandle? CreateInstance (string assemblyName, string typeName, object?[]? activationAttributes);
public System.Runtime.Remoting.ObjectHandle CreateInstance (string assemblyName, string typeName, object[] activationAttributes);
member this.CreateInstance : string * string * obj[] -> System.Runtime.Remoting.ObjectHandle
abstract member CreateInstance : string * string * obj[] -> System.Runtime.Remoting.ObjectHandle
override this.CreateInstance : string * string * obj[] -> System.Runtime.Remoting.ObjectHandle
Public Function CreateInstance (assemblyName As String, typeName As String, activationAttributes As Object()) As ObjectHandle
Parametry
- typeName
- String
Plně kvalifikovaný název požadovaného typu, včetně oboru názvů, ale ne sestavení, jak je vráceno FullName vlastností.
- activationAttributes
- Object[]
Pole jednoho nebo několika atributů, které se mohou podílet na aktivaci. Obvykle se jedná o pole obsahující jeden UrlAttribute objekt, který určuje adresu URL, která je nutná k aktivaci vzdáleného objektu.
Tento parametr souvisí s objekty aktivovanými klientem. Aktivace klienta je starší technologie, která se zachovává kvůli zpětné kompatibilitě, ale nedoporučuje se pro nový vývoj. Distribuované aplikace by místo toho měly používat Windows Communication Foundation.
Návraty
Objekt, který je obálkou pro novou instanci určenou pomocí typeName
. Přístup k reálnému objektu lze zajistit pouze pomocí nezabalené návratové hodnoty.
Implementuje
Výjimky
Dojde k pokusu o operaci na uvolněné doméně aplikace.
assemblyName
nebo typeName
je null
.
assemblyName
není platné sestavení pro aktuálně načtený modul runtime.
Sestavení nebo modul byly zavedeny dvakrát se dvěma různými legitimacemi.
assemblyName
nebyl nalezen.
Volající nemá oprávnění k volání tohoto konstruktoru.
Nebyl nalezen žádný odpovídající veřejný konstruktor.
Volající nemůže zadat aktivační atributy pro objekt, který nedědí z MarshalByRefObject.
typename
nebyl nalezen v assemblyName
souboru .
Tato instance je null
.
Poznámky
Tato metoda volá konstruktor bez parametrů pro typeName
.
Viz AssemblyName formát assemblyName
.
Pokus o volání CreateInstance v cílové doméně aplikace, která není aktuální doménou aplikace, bude mít za následek úspěšné načtení sestavení v cílové doméně aplikace. Assembly Vzhledem k tomu, že není MarshalByRefObject, když se tato metoda pokusí vrátit Assembly načtené sestavení do aktuální domény aplikace, common language runtime se pokusí načíst sestavení do aktuální domény aplikace a načtení může selhat. Pokud se nastavení cesty pro dvě domény aplikace liší, sestavení načtené do aktuální domény aplikace se může lišit od prvně načteného sestavení.
Viz také
Platí pro
CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])
- Zdroj:
- AppDomain.cs
- Zdroj:
- AppDomain.cs
- Zdroj:
- AppDomain.cs
Vytvoří novou instanci určeného typu definovaného v zadaném sestavení. Parametry určují pořadač, příznaky vazby, argumenty konstruktoru, informace specifické pro jazykovou verzi používané k interpretaci argumentů a volitelné aktivační atributy.
public:
System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName, bool ignoreCase, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ args, System::Globalization::CultureInfo ^ culture, cli::array <System::Object ^> ^ activationAttributes);
public System.Runtime.Remoting.ObjectHandle? CreateInstance (string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, object?[]? args, System.Globalization.CultureInfo? culture, object?[]? activationAttributes);
public System.Runtime.Remoting.ObjectHandle CreateInstance (string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes);
member this.CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] -> System.Runtime.Remoting.ObjectHandle
Public Function CreateInstance (assemblyName As String, typeName As String, ignoreCase As Boolean, bindingAttr As BindingFlags, binder As Binder, args As Object(), culture As CultureInfo, activationAttributes As Object()) As ObjectHandle
Parametry
- typeName
- String
Plně kvalifikovaný název požadovaného typu, včetně oboru názvů, ale ne sestavení, jak je vráceno FullName vlastností.
- ignoreCase
- Boolean
Logická hodnota označující, zda se při vyhledávání mají rozlišovat malá a velká písmena.
- bindingAttr
- BindingFlags
Kombinace nulových nebo více bitových příznaků, které ovlivňují hledání konstruktoru typeName
. Pokud bindingAttr
je hodnota nula, provede se vyhledávání veřejných konstruktorů s rozlišováním velkých a malých písmen.
- binder
- Binder
Objekt, který umožňuje vazbu, vynucování typů argumentů, vyvolání členů a načítání MemberInfo objektů pomocí reflexe. Pokud binder
je hodnota null, použije se výchozí pořadač.
- args
- Object[]
Argumenty předané konstruktoru. U tohoto pole argumentů musí odpovídat číslo, pořadí a typ parametrů volanému konstruktoru. Pokud je preferován konstruktor bez parametrů, args
musí být prázdné pole nebo null.
- culture
- CultureInfo
Informace specifické pro jazykovou verzi, které řídí donucování k formálním args
typům deklarovaným typeName
pro konstruktor. Pokud culture
je null
, použije se CultureInfo pro aktuální vlákno.
- activationAttributes
- Object[]
Pole jednoho nebo několika atributů, které se mohou podílet na aktivaci. Obvykle se jedná o pole obsahující jeden UrlAttribute objekt, který určuje adresu URL, která je nutná k aktivaci vzdáleného objektu.
Tento parametr souvisí s objekty aktivovanými klientem. Aktivace klienta je starší technologie, která se zachovává kvůli zpětné kompatibilitě, ale nedoporučuje se pro nový vývoj. Distribuované aplikace by místo toho měly používat Windows Communication Foundation.
Návraty
Objekt, který je obálkou pro novou instanci určenou pomocí typeName
. Přístup k reálnému objektu lze zajistit pouze pomocí nezabalené návratové hodnoty.
Výjimky
Dojde k pokusu o operaci na uvolněné doméně aplikace.
assemblyName
nebo typeName
je null
.
assemblyName
není platné sestavení pro aktuálně načtený modul runtime.
Sestavení nebo modul byly zavedeny dvakrát se dvěma různými legitimacemi.
assemblyName
nebyl nalezen.
Volající nemá oprávnění k volání tohoto konstruktoru.
Nebyl nalezen žádný odpovídající konstruktor.
Volající nemůže zadat aktivační atributy pro objekt, který nedědí z MarshalByRefObject.
typename
nebyl nalezen v assemblyName
souboru .
Tato instance je null
.
Poznámky
Viz AssemblyName formát assemblyName
.
Pokus o volání CreateInstance v cílové doméně aplikace, která není aktuální doménou aplikace, bude mít za následek úspěšné načtení sestavení v cílové doméně aplikace. Assembly Vzhledem k tomu, že není MarshalByRefObject, když se tato metoda pokusí vrátit Assembly načtené sestavení do aktuální domény aplikace, common language runtime se pokusí načíst sestavení do aktuální domény aplikace a načtení může selhat. Pokud se nastavení cesty pro dvě domény aplikace liší, sestavení načtené do aktuální domény aplikace se může lišit od prvně načteného sestavení.
Viz také
Platí pro
CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)
Upozornění
Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.
Vytvoří novou instanci určeného typu definovaného v zadaném sestavení. Parametry určují pořadač, příznaky vazby, argumenty konstruktoru, informace specifické pro jazykovou verzi používané k interpretaci argumentů, aktivační atributy a autorizaci k vytvoření typu.
public:
virtual System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName, bool ignoreCase, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ args, System::Globalization::CultureInfo ^ culture, cli::array <System::Object ^> ^ activationAttributes, System::Security::Policy::Evidence ^ securityAttributes);
public System.Runtime.Remoting.ObjectHandle CreateInstance (string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes, System.Security.Policy.Evidence securityAttributes);
[System.Obsolete("Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
public System.Runtime.Remoting.ObjectHandle CreateInstance (string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes, System.Security.Policy.Evidence securityAttributes);
abstract member CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
override this.CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
[<System.Obsolete("Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")>]
abstract member CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
override this.CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
Public Function CreateInstance (assemblyName As String, typeName As String, ignoreCase As Boolean, bindingAttr As BindingFlags, binder As Binder, args As Object(), culture As CultureInfo, activationAttributes As Object(), securityAttributes As Evidence) As ObjectHandle
Parametry
- typeName
- String
Plně kvalifikovaný název požadovaného typu, včetně oboru názvů, ale nikoli sestavení, vrácený FullName vlastností.
- ignoreCase
- Boolean
Logická hodnota označující, zda se při vyhledávání mají rozlišovat malá a velká písmena.
- bindingAttr
- BindingFlags
Kombinace nulových nebo více bitových příznaků, které ovlivňují hledání konstruktoru typeName
. Pokud bindingAttr
je hodnota nula, provede se vyhledávání veřejných konstruktorů s rozlišováním velkých a malých písmen.
- binder
- Binder
Objekt, který umožňuje vazbu, vynucování typů argumentů, vyvolání členů a načtení MemberInfo objektů pomocí reflexe. Pokud binder
je hodnota null, použije se výchozí pořadač.
- args
- Object[]
Argumenty předané konstruktoru. U tohoto pole argumentů musí odpovídat číslo, pořadí a typ parametrů volanému konstruktoru. Pokud je konstruktor bez parametrů upřednostňovaný, args
musí být prázdné pole nebo null.
- culture
- CultureInfo
Informace specifické pro jazykovou verzi, které řídí převod args
na formální typy deklarované pro typeName
konstruktor. Pokud culture
je null
, použije se CultureInfo pro aktuální vlákno .
- activationAttributes
- Object[]
Pole jednoho nebo několika atributů, které se mohou podílet na aktivaci. Obvykle pole obsahující jeden UrlAttribute objekt, který určuje adresu URL, která je nutná k aktivaci vzdáleného objektu.
Tento parametr souvisí s objekty aktivovanými klientem. Aktivace klienta je starší technologie, která se zachovává kvůli zpětné kompatibilitě, ale nedoporučuje se pro nový vývoj. Distribuované aplikace by místo toho měly používat Windows Communication Foundation.
- securityAttributes
- Evidence
Informace použité k autorizaci vytvoření objektu typeName
.
Návraty
Objekt, který je obálkou pro novou instanci určenou pomocí typeName
. Přístup k reálnému objektu lze zajistit pouze pomocí nezabalené návratové hodnoty.
Implementuje
- Atributy
Výjimky
Dojde k pokusu o operaci na uvolněné doméně aplikace.
assemblyName
nebo typeName
je null
.
assemblyName
není platné sestavení pro aktuálně načtený modul runtime.
Sestavení nebo modul byly zavedeny dvakrát se dvěma různými legitimacemi.
assemblyName
nebyla nalezena.
Volající nemá oprávnění k volání tohoto konstruktoru.
Nebyl nalezen žádný odpovídající konstruktor.
Volající nemůže poskytnout atributy aktivace pro objekt, který nedědí z MarshalByRefObject.
-nebo-
securityAttributes
není null
. Pokud starší verze zásad CAS není povolená, securityAttributes
měla by být null
typename
nebyla nalezena v assemblyName
.
Tato instance je null
.
Poznámky
Formát najdete AssemblyName v assemblyName
tématu .
Pokus o volání CreateInstance v cílové doméně aplikace, která není aktuální doménou aplikace, bude mít za následek úspěšné načtení sestavení v cílové doméně aplikace. Assembly Vzhledem k tomu, že není MarshalByRefObject, když se tato metoda pokusí vrátit Assembly pro načtené sestavení do aktuální domény aplikace, common language runtime se pokusí načíst sestavení do aktuální domény aplikace a načtení může selhat. Pokud se nastavení cesty pro dvě domény aplikace liší, sestavení načtené do aktuální domény aplikace se může lišit od prvně načteného sestavení.
Viz také
Platí pro
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro