Udostępnij za pośrednictwem


Activator.CreateInstanceFrom Metoda

Definicja

Tworzy wystąpienie typu, którego nazwa jest określona, przy użyciu nazwanego pliku zestawu i konstruktora, który najlepiej pasuje do określonych parametrów.

Przeciążenia

CreateInstanceFrom(AppDomain, String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)
Przestarzałe.

Tworzy wystąpienie typu, którego nazwa jest określona w określonej domenie zdalnej, przy użyciu nazwanego pliku zestawu i konstruktora, który najlepiej pasuje do określonych parametrów.

CreateInstanceFrom(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)
Przestarzałe.

Tworzy wystąpienie typu, którego nazwa jest określona, przy użyciu nazwanego pliku zestawu i konstruktora, który najlepiej pasuje do określonych parametrów.

CreateInstanceFrom(AppDomain, String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])

Tworzy wystąpienie typu, którego nazwa jest określona w określonej domenie zdalnej, przy użyciu nazwanego pliku zestawu i konstruktora, który najlepiej pasuje do określonych parametrów.

CreateInstanceFrom(String, String, Object[])

Tworzy wystąpienie typu, którego nazwa jest określona, przy użyciu nazwanego pliku zestawu i konstruktora bez parametrów.

CreateInstanceFrom(AppDomain, String, String)

Tworzy wystąpienie typu, którego nazwa jest określona w określonej domenie zdalnej, przy użyciu nazwanego pliku zestawu i konstruktora bez parametrów.

CreateInstanceFrom(String, String)

Tworzy wystąpienie typu, którego nazwa jest określona, przy użyciu nazwanego pliku zestawu i konstruktora bez parametrów.

CreateInstanceFrom(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])

Tworzy wystąpienie typu, którego nazwa jest określona, przy użyciu nazwanego pliku zestawu i konstruktora, który najlepiej pasuje do określonych parametrów.

CreateInstanceFrom(AppDomain, String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)

Przestroga

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 CreateInstanceFrom which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.

Tworzy wystąpienie typu, którego nazwa jest określona w określonej domenie zdalnej, przy użyciu nazwanego pliku zestawu i konstruktora, który najlepiej pasuje do określonych parametrów.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstanceFrom(AppDomain ^ domain, System::String ^ assemblyFile, 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 static System.Runtime.Remoting.ObjectHandle CreateInstanceFrom (AppDomain domain, string assemblyFile, 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 CreateInstanceFrom which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
[System.Security.SecurityCritical]
public static System.Runtime.Remoting.ObjectHandle CreateInstanceFrom (AppDomain domain, string assemblyFile, 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);
static member CreateInstanceFrom : AppDomain * 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 CreateInstanceFrom which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")>]
[<System.Security.SecurityCritical>]
static member CreateInstanceFrom : AppDomain * string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstanceFrom (domain As AppDomain, assemblyFile 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

domain
AppDomain

Domena zdalna, w której jest tworzony typ o nazwie typeName.

assemblyFile
String

Nazwa pliku zawierającego zestaw, w którym poszukiwany jest typ o nazwie typeName.

typeName
String

Nazwa typu do utworzenia wystąpienia.

ignoreCase
Boolean

true określić, że wyszukiwanie typeName nie uwzględnia wielkości liter; false określić, że wyszukiwanie uwzględnia wielkość liter.

bindingAttr
BindingFlags

Kombinacja flag zero lub więcej bitów, które wpływają na wyszukiwanie konstruktora typeName. Jeśli bindingAttr wynosi zero, przeprowadzane jest wyszukiwanie konstruktorów publicznych z uwzględnieniem wielkości liter.

binder
Binder

Obiekt, który używa bindingAttr i args do wyszukiwania i identyfikowania konstruktora typeName. Jeśli binder jest null, zostanie użyty domyślny binder.

args
Object[]

Tablica argumentów, które pasują do liczby, kolejności i wpisz parametry konstruktora do wywołania. Jeśli args jest pustą tablicą lub null, konstruktor, który nie przyjmuje żadnych parametrów (konstruktor bez parametrów) jest wywoływany.

culture
CultureInfo

Informacje specyficzne dla kultury, które określają przymus args do typów formalnych zadeklarowanych dla konstruktora typeName. Jeśli culture jest null, zostanie użyta CultureInfo dla bieżącego wątku.

activationAttributes
Object[]

Tablica co najmniej jednego atrybutu, który może uczestniczyć w aktywacji. Jest to zazwyczaj tablica zawierająca pojedynczy obiekt UrlAttribute, który określa adres URL wymagany do aktywowania obiektu zdalnego.

Ten parametr jest związany z obiektami aktywowanymi przez klienta. Aktywacja klienta to starsza technologia, która jest zachowywana w celu zapewnienia zgodności z poprzednimi wersjami, ale nie jest zalecana w przypadku nowego programowania. Aplikacje rozproszone powinny zamiast tego używać programu Windows Communication Foundation.

securityAttributes
Evidence

Informacje używane do podejmowania decyzji dotyczących zasad zabezpieczeń i udzielania uprawnień do kodu.

Zwraca

Uchwyt, który musi zostać rozpasany, aby uzyskać dostęp do nowo utworzonego obiektu lub null dla wystąpień Nullable<T>.

Atrybuty

Wyjątki

domain lub typeName jest null.

Nie znaleziono pasującego konstruktora.

nie można odnaleźć typeName w assemblyFile.

nie można odnaleźć assemblyFile.

Obiekt wywołujący nie ma uprawnień do wywoływania tego konstruktora.

Nie można utworzyć wystąpienia klasy abstrakcyjnej lub ten element członkowski został wywołany z mechanizmem późnego powiązania.

Konstruktor, który został wywołany przez odbicie, rzucił wyjątek.

Obiekt wywołujący ma wymagany FileIOPermission.

activationAttributes nie jest pustą tablicą, a tworzony typ nie pochodzi z MarshalByRefObject.

assemblyFile nie jest prawidłowym zestawem.

-lub-

Środowisko uruchomieniowe języka wspólnego (CLR) w wersji 2.0 lub nowszej jest obecnie ładowane, a assemblyFile został skompilowany dla wersji środowiska CLR nowszej niż aktualnie załadowana wersja. Należy pamiętać, że program .NET Framework w wersji 2.0, 3.0 i 3.5 używa środowiska CLR w wersji 2.0.

Uwagi

Użyj CreateInstanceFrom, gdy host musi wykonać kod w domenie aplikacji z ograniczonymi uprawnieniami zabezpieczeń.

Użyj metody ObjectHandle.Unwrap, aby odpakować wartość zwracaną.

Aby uzyskać informacje o innych wyjątkach, które mogą być zgłaszane przez wywoływane metody, zobacz sekcję Wyjątki metod Assembly.LoadFrom i CreateInstance.

Dotyczy

CreateInstanceFrom(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)

Przestroga

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 CreateInstanceFrom which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.

Tworzy wystąpienie typu, którego nazwa jest określona, przy użyciu nazwanego pliku zestawu i konstruktora, który najlepiej pasuje do określonych parametrów.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstanceFrom(System::String ^ assemblyFile, 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 ^ securityInfo);
public static System.Runtime.Remoting.ObjectHandle CreateInstanceFrom (string assemblyFile, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes, System.Security.Policy.Evidence securityInfo);
[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 CreateInstanceFrom which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
public static System.Runtime.Remoting.ObjectHandle CreateInstanceFrom (string assemblyFile, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes, System.Security.Policy.Evidence securityInfo);
static member CreateInstanceFrom : 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 CreateInstanceFrom which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")>]
static member CreateInstanceFrom : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstanceFrom (assemblyFile As String, typeName As String, ignoreCase As Boolean, bindingAttr As BindingFlags, binder As Binder, args As Object(), culture As CultureInfo, activationAttributes As Object(), securityInfo As Evidence) As ObjectHandle

Parametry

assemblyFile
String

Nazwa pliku zawierającego zestaw, w którym poszukiwany jest typ o nazwie typeName.

typeName
String

Nazwa typu do utworzenia wystąpienia.

ignoreCase
Boolean

true określić, że wyszukiwanie typeName nie uwzględnia wielkości liter; false określić, że wyszukiwanie uwzględnia wielkość liter.

bindingAttr
BindingFlags

Kombinacja flag zero lub więcej bitów, które wpływają na wyszukiwanie konstruktora typeName. Jeśli bindingAttr wynosi zero, przeprowadzane jest wyszukiwanie konstruktorów publicznych z uwzględnieniem wielkości liter.

binder
Binder

Obiekt, który używa bindingAttr i args do wyszukiwania i identyfikowania konstruktora typeName. Jeśli binder jest null, zostanie użyty domyślny binder.

args
Object[]

Tablica argumentów, które pasują do liczby, kolejności i wpisz parametry konstruktora do wywołania. Jeśli args jest pustą tablicą lub null, konstruktor, który nie przyjmuje żadnych parametrów (konstruktor bez parametrów) jest wywoływany.

culture
CultureInfo

Informacje specyficzne dla kultury, które określają przymus args do typów formalnych zadeklarowanych dla konstruktora typeName. Jeśli culture jest null, zostanie użyta CultureInfo dla bieżącego wątku.

activationAttributes
Object[]

Tablica co najmniej jednego atrybutu, który może uczestniczyć w aktywacji. Jest to zazwyczaj tablica zawierająca pojedynczy obiekt UrlAttribute, który określa adres URL wymagany do aktywowania obiektu zdalnego.

Ten parametr jest związany z obiektami aktywowanymi przez klienta. Aktywacja klienta to starsza technologia, która jest zachowywana w celu zapewnienia zgodności z poprzednimi wersjami, ale nie jest zalecana w przypadku nowego programowania. Aplikacje rozproszone powinny zamiast tego używać programu Windows Communication Foundation.

securityInfo
Evidence

Informacje używane do podejmowania decyzji dotyczących zasad zabezpieczeń i udzielania uprawnień do kodu.

Zwraca

Uchwyt, który musi zostać rozpasany, aby uzyskać dostęp do nowo utworzonego obiektu lub null dla wystąpień Nullable<T>.

Atrybuty

Wyjątki

typeName jest null.

Nie znaleziono pasującego konstruktora.

nie można odnaleźć typeName w assemblyFile.

nie można odnaleźć assemblyFile.

Obiekt wywołujący nie ma uprawnień do wywoływania tego konstruktora.

Nie można utworzyć wystąpienia klasy abstrakcyjnej lub ten element członkowski został wywołany z mechanizmem późnego powiązania.

Konstruktor, który został wywołany przez odbicie, rzucił wyjątek.

Obiekt wywołujący nie ma wymaganego FileIOPermission.

activationAttributes nie jest pustą tablicą, a tworzony typ nie pochodzi z MarshalByRefObject.

assemblyFile nie jest prawidłowym zestawem.

-lub-

Środowisko uruchomieniowe języka wspólnego (CLR) w wersji 2.0 lub nowszej jest obecnie ładowane, a assemblyFile został skompilowany dla wersji środowiska CLR nowszej niż aktualnie załadowana wersja. Należy pamiętać, że program .NET Framework w wersji 2.0, 3.0 i 3.5 używa środowiska CLR w wersji 2.0.

Uwagi

Użyj metody ObjectHandle.Unwrap, aby odpakować wartość zwracaną.

Aby uzyskać informacje o innych wyjątkach, które mogą być zgłaszane przez wywoływane metody, zobacz sekcję Wyjątki metod Assembly.LoadFrom i CreateInstance.

Dotyczy

CreateInstanceFrom(AppDomain, String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])

Tworzy wystąpienie typu, którego nazwa jest określona w określonej domenie zdalnej, przy użyciu nazwanego pliku zestawu i konstruktora, który najlepiej pasuje do określonych parametrów.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstanceFrom(AppDomain ^ domain, System::String ^ assemblyFile, 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.SecurityCritical]
public static System.Runtime.Remoting.ObjectHandle CreateInstanceFrom (AppDomain domain, string assemblyFile, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes);
[<System.Security.SecurityCritical>]
static member CreateInstanceFrom : AppDomain * string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstanceFrom (domain As AppDomain, assemblyFile 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

domain
AppDomain

Domena zdalna, w której jest tworzony typ o nazwie typeName.

assemblyFile
String

Nazwa pliku zawierającego zestaw, w którym poszukiwany jest typ o nazwie typeName.

typeName
String

Nazwa typu do utworzenia wystąpienia.

ignoreCase
Boolean

true określić, że wyszukiwanie typeName nie uwzględnia wielkości liter; false określić, że wyszukiwanie uwzględnia wielkość liter.

bindingAttr
BindingFlags

Kombinacja flag zero lub więcej bitów, które wpływają na wyszukiwanie konstruktora typeName. Jeśli bindingAttr wynosi zero, przeprowadzane jest wyszukiwanie konstruktorów publicznych z uwzględnieniem wielkości liter.

binder
Binder

Obiekt, który używa bindingAttr i args do wyszukiwania i identyfikowania konstruktora typeName. Jeśli binder jest null, zostanie użyty domyślny binder.

args
Object[]

Tablica argumentów, które pasują do liczby, kolejności i wpisz parametry konstruktora do wywołania. Jeśli args jest pustą tablicą lub null, konstruktor, który nie przyjmuje żadnych parametrów (konstruktor bez parametrów) jest wywoływany.

culture
CultureInfo

Informacje specyficzne dla kultury, które określają przymus args do typów formalnych zadeklarowanych dla konstruktora typeName. Jeśli culture jest null, zostanie użyta CultureInfo dla bieżącego wątku.

activationAttributes
Object[]

Tablica co najmniej jednego atrybutu, który może uczestniczyć w aktywacji. Jest to zazwyczaj tablica zawierająca pojedynczy obiekt UrlAttribute, który określa adres URL wymagany do aktywowania obiektu zdalnego.

Ten parametr jest związany z obiektami aktywowanymi przez klienta. Aktywacja klienta to starsza technologia, która jest zachowywana w celu zapewnienia zgodności z poprzednimi wersjami, ale nie jest zalecana w przypadku nowego programowania. Aplikacje rozproszone powinny zamiast tego używać programu Windows Communication Foundation.

Zwraca

Uchwyt, który musi zostać rozpasany, aby uzyskać dostęp do nowo utworzonego obiektu lub null dla wystąpień Nullable<T>.

Atrybuty

Wyjątki

domain lub typeName jest null.

Nie znaleziono pasującego konstruktora.

nie można odnaleźć typeName w assemblyFile.

nie można odnaleźć assemblyFile.

Obiekt wywołujący nie ma uprawnień do wywoływania tego konstruktora.

Nie można utworzyć wystąpienia klasy abstrakcyjnej lub ten element członkowski został wywołany z mechanizmem późnego powiązania.

Konstruktor, który został wywołany przez odbicie, rzucił wyjątek.

Obiekt wywołujący ma wymagany FileIOPermission.

activationAttributes nie jest pustą tablicą, a tworzony typ nie pochodzi z MarshalByRefObject.

assemblyFile nie jest prawidłowym zestawem.

-lub-

assemblyFile został skompilowany dla wersji środowiska uruchomieniowego języka wspólnego, która jest nowsza niż wersja, która jest aktualnie załadowana.

Uwagi

Użyj CreateInstanceFrom, gdy host musi wykonać kod w domenie aplikacji z ograniczonymi uprawnieniami zabezpieczeń.

Użyj metody ObjectHandle.Unwrap, aby odpakować wartość zwracaną.

Aby uzyskać informacje o innych wyjątkach, które mogą być zgłaszane przez wywoływane metody, zobacz sekcje Wyjątki metod Assembly.LoadFrom i CreateInstance.

Dotyczy

CreateInstanceFrom(String, String, Object[])

Źródło:
Activator.cs
Źródło:
Activator.cs
Źródło:
Activator.cs

Tworzy wystąpienie typu, którego nazwa jest określona, przy użyciu nazwanego pliku zestawu i konstruktora bez parametrów.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstanceFrom(System::String ^ assemblyFile, System::String ^ typeName, cli::array <System::Object ^> ^ activationAttributes);
public static System.Runtime.Remoting.ObjectHandle? CreateInstanceFrom (string assemblyFile, string typeName, object?[]? activationAttributes);
public static System.Runtime.Remoting.ObjectHandle CreateInstanceFrom (string assemblyFile, string typeName, object[] activationAttributes);
static member CreateInstanceFrom : string * string * obj[] -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstanceFrom (assemblyFile As String, typeName As String, activationAttributes As Object()) As ObjectHandle

Parametry

assemblyFile
String

Nazwa pliku zawierającego zestaw, w którym poszukiwany jest typ o nazwie typeName.

typeName
String

Nazwa typu do utworzenia wystąpienia.

activationAttributes
Object[]

Tablica co najmniej jednego atrybutu, który może uczestniczyć w aktywacji. Jest to zazwyczaj tablica zawierająca pojedynczy obiekt UrlAttribute, który określa adres URL wymagany do aktywowania obiektu zdalnego.

Ten parametr jest związany z obiektami aktywowanymi przez klienta. Aktywacja klienta to starsza technologia, która jest zachowywana w celu zapewnienia zgodności z poprzednimi wersjami, ale nie jest zalecana w przypadku nowego programowania. Aplikacje rozproszone powinny zamiast tego używać programu Windows Communication Foundation.

Zwraca

Uchwyt, który musi zostać rozpasany, aby uzyskać dostęp do nowo utworzonego obiektu lub null dla wystąpień Nullable<T>.

Wyjątki

typeName jest null.

Nie znaleziono pasującego publicznego konstruktora.

nie można odnaleźć typeName w assemblyFile.

nie można odnaleźć assemblyFile.

Obiekt wywołujący nie ma uprawnień do wywoływania tego konstruktora.

Nie można utworzyć wystąpienia klasy abstrakcyjnej lub ten element członkowski został wywołany z mechanizmem późnego powiązania.

Konstruktor, który został wywołany przez odbicie, rzucił wyjątek.

activationAttributes nie jest pustą tablicą, a tworzony typ nie pochodzi z MarshalByRefObject.

Obiekt wywołujący ma wymagany FileIOPermission.

assemblyFile nie jest prawidłowym zestawem.

-lub-

Środowisko uruchomieniowe języka wspólnego (CLR) w wersji 2.0 lub nowszej jest obecnie ładowane, a assemblyFile został skompilowany dla wersji środowiska CLR nowszej niż aktualnie załadowana wersja. Należy pamiętać, że program .NET Framework w wersji 2.0, 3.0 i 3.5 używa środowiska CLR w wersji 2.0.

Uwagi

Użyj metody ObjectHandle.Unwrap, aby odpakować wartość zwracaną.

Aby uzyskać informacje o innych wyjątkach, które mogą być zgłaszane przez wywoływane metody, zobacz sekcję Wyjątki metod Assembly.LoadFrom i CreateInstance.

Dotyczy

CreateInstanceFrom(AppDomain, String, String)

Tworzy wystąpienie typu, którego nazwa jest określona w określonej domenie zdalnej, przy użyciu nazwanego pliku zestawu i konstruktora bez parametrów.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstanceFrom(AppDomain ^ domain, System::String ^ assemblyFile, System::String ^ typeName);
public static System.Runtime.Remoting.ObjectHandle CreateInstanceFrom (AppDomain domain, string assemblyFile, string typeName);
[System.Security.SecurityCritical]
public static System.Runtime.Remoting.ObjectHandle CreateInstanceFrom (AppDomain domain, string assemblyFile, string typeName);
static member CreateInstanceFrom : AppDomain * string * string -> System.Runtime.Remoting.ObjectHandle
[<System.Security.SecurityCritical>]
static member CreateInstanceFrom : AppDomain * string * string -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstanceFrom (domain As AppDomain, assemblyFile As String, typeName As String) As ObjectHandle

Parametry

domain
AppDomain

Domena zdalna, w której jest tworzony typ o nazwie typeName.

assemblyFile
String

Nazwa pliku zawierającego zestaw, w którym poszukiwany jest typ o nazwie typeName.

typeName
String

Nazwa typu do utworzenia wystąpienia.

Zwraca

Uchwyt, który musi zostać rozpasany, aby uzyskać dostęp do nowo utworzonego obiektu lub null dla wystąpień Nullable<T>.

Atrybuty

Wyjątki

domain lub typeName jest null.

Nie znaleziono pasującego publicznego konstruktora.

nie można odnaleźć typeName w assemblyFile.

nie można odnaleźć assemblyFile.

Obiekt wywołujący nie ma uprawnień do wywoływania tego konstruktora.

Nie można utworzyć wystąpienia klasy abstrakcyjnej lub ten element członkowski został wywołany z mechanizmem późnego powiązania.

Konstruktor, który został wywołany przez odbicie, rzucił wyjątek.

Obiekt wywołujący ma wymagany FileIOPermission.

assemblyFile nie jest prawidłowym zestawem.

-lub-

Środowisko uruchomieniowe języka wspólnego (CLR) w wersji 2.0 lub nowszej jest obecnie ładowane, a assemblyFile został skompilowany dla wersji środowiska CLR nowszej niż aktualnie załadowana wersja. Należy pamiętać, że program .NET Framework w wersji 2.0, 3.0 i 3.5 używa środowiska CLR w wersji 2.0.

Uwagi

Użyj CreateInstanceFrom, gdy host musi wykonać kod w domenie aplikacji z ograniczonymi uprawnieniami zabezpieczeń.

Użyj metody ObjectHandle.Unwrap, aby odpakować wartość zwracaną.

Aby uzyskać informacje o innych wyjątkach, które mogą być zgłaszane przez wywoływane metody, zobacz sekcję Wyjątki metod Assembly.LoadFrom i CreateInstance.

Dotyczy

CreateInstanceFrom(String, String)

Źródło:
Activator.cs
Źródło:
Activator.cs
Źródło:
Activator.cs

Tworzy wystąpienie typu, którego nazwa jest określona, przy użyciu nazwanego pliku zestawu i konstruktora bez parametrów.

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

Parametry

assemblyFile
String

Nazwa pliku zawierającego zestaw, w którym poszukiwany jest typ o nazwie typeName.

typeName
String

Nazwa typu do utworzenia wystąpienia.

Zwraca

Uchwyt, który musi zostać rozpasany, aby uzyskać dostęp do nowo utworzonego obiektu lub null dla wystąpień Nullable<T>.

Wyjątki

typeName jest null.

Nie znaleziono pasującego publicznego konstruktora.

nie można odnaleźć typeName w assemblyFile.

nie można odnaleźć assemblyFile.

Obiekt wywołujący nie ma uprawnień do wywoływania tego konstruktora.

Nie można utworzyć wystąpienia klasy abstrakcyjnej lub ten element członkowski został wywołany z mechanizmem późnego powiązania.

Konstruktor, który został wywołany przez odbicie, rzucił wyjątek.

Obiekt wywołujący ma wymagany FileIOPermission.

assemblyFile nie jest prawidłowym zestawem.

-lub-

Środowisko uruchomieniowe języka wspólnego (CLR) w wersji 2.0 lub nowszej jest obecnie ładowane, a assemblyFile został skompilowany dla wersji środowiska CLR nowszej niż aktualnie załadowana wersja. Należy pamiętać, że program .NET Framework w wersji 2.0, 3.0 i 3.5 używa środowiska CLR w wersji 2.0.

Przykłady

W poniższym przykładzie kodu pokazano, jak wywołać metodę CreateInstanceFrom. Ten przykład kodu jest częścią większego przykładu udostępnionego dla klasy Activator.

// Create an instance of the SomeType class that is defined in this 
// assembly.
System::Runtime::Remoting::ObjectHandle^ oh = 
    Activator::CreateInstanceFrom(Assembly::GetEntryAssembly()->CodeBase, 
                                  SomeType::typeid->FullName);

// Call an instance method defined by the SomeType type using this object.
SomeType^ st = (SomeType^) oh->Unwrap();

st->DoSomething(5);
// Create an instance of the SomeType class that is defined in this
// assembly.
System.Runtime.Remoting.ObjectHandle oh =
    Activator.CreateInstanceFrom(Assembly.GetEntryAssembly().CodeBase,
                                 typeof(SomeType).FullName);

// Call an instance method defined by the SomeType type using this object.
SomeType st = (SomeType) oh.Unwrap();

st.DoSomething(5);
// Create an instance of the SomeType class that is defined in this assembly.
let oh = 
    Activator.CreateInstanceFrom(Assembly.GetEntryAssembly().Location, typeof<SomeType>.FullName)

// Call an instance method defined by the SomeType type using this object.
let st = oh.Unwrap() :?> SomeType

st.DoSomething 5
' Create an instance of the SomeType class that is defined in this assembly.
Dim oh As System.Runtime.Remoting.ObjectHandle = _
    Activator.CreateInstanceFrom(Assembly.GetEntryAssembly().CodeBase, _
                                 GetType(SomeType).FullName)

' Call an instance method defined by the SomeType type using this object.
Dim st As SomeType = CType(oh.Unwrap(), SomeType)

st.DoSomething(5)

Uwagi

Użyj metody ObjectHandle.Unwrap, aby odpakować wartość zwracaną.

Aby uzyskać informacje o innych wyjątkach, które mogą być zgłaszane przez wywoływane metody, zobacz sekcję Wyjątki metod Assembly.LoadFrom i CreateInstance.

Dotyczy

CreateInstanceFrom(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])

Źródło:
Activator.cs
Źródło:
Activator.cs
Źródło:
Activator.cs

Tworzy wystąpienie typu, którego nazwa jest określona, przy użyciu nazwanego pliku zestawu i konstruktora, który najlepiej pasuje do określonych parametrów.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstanceFrom(System::String ^ assemblyFile, 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 static System.Runtime.Remoting.ObjectHandle? CreateInstanceFrom (string assemblyFile, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, object?[]? args, System.Globalization.CultureInfo? culture, object?[]? activationAttributes);
public static System.Runtime.Remoting.ObjectHandle CreateInstanceFrom (string assemblyFile, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes);
static member CreateInstanceFrom : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstanceFrom (assemblyFile 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

assemblyFile
String

Nazwa pliku zawierającego zestaw, w którym poszukiwany jest typ o nazwie typeName.

typeName
String

Nazwa typu do utworzenia wystąpienia.

ignoreCase
Boolean

true określić, że wyszukiwanie typeName nie uwzględnia wielkości liter; false określić, że wyszukiwanie uwzględnia wielkość liter.

bindingAttr
BindingFlags

Kombinacja flag zero lub więcej bitów, które wpływają na wyszukiwanie konstruktora typeName. Jeśli bindingAttr wynosi zero, przeprowadzane jest wyszukiwanie konstruktorów publicznych z uwzględnieniem wielkości liter.

binder
Binder

Obiekt, który używa bindingAttr i args do wyszukiwania i identyfikowania konstruktora typeName. Jeśli binder jest null, zostanie użyty domyślny binder.

args
Object[]

Tablica argumentów, które pasują do liczby, kolejności i wpisz parametry konstruktora do wywołania. Jeśli args jest pustą tablicą lub null, konstruktor, który nie przyjmuje żadnych parametrów (konstruktor bez parametrów) jest wywoływany.

culture
CultureInfo

Informacje specyficzne dla kultury, które określają przymus args do typów formalnych zadeklarowanych dla konstruktora typeName. Jeśli culture jest null, zostanie użyta CultureInfo dla bieżącego wątku.

activationAttributes
Object[]

Tablica co najmniej jednego atrybutu, który może uczestniczyć w aktywacji. Jest to zazwyczaj tablica zawierająca pojedynczy obiekt UrlAttribute, który określa adres URL wymagany do aktywowania obiektu zdalnego.

Ten parametr jest związany z obiektami aktywowanymi przez klienta. Aktywacja klienta to starsza technologia, która jest zachowywana w celu zapewnienia zgodności z poprzednimi wersjami, ale nie jest zalecana w przypadku nowego programowania. Aplikacje rozproszone powinny zamiast tego używać programu Windows Communication Foundation.

Zwraca

Uchwyt, który musi zostać rozpasany, aby uzyskać dostęp do nowo utworzonego obiektu lub null dla wystąpień Nullable<T>.

Wyjątki

typeName jest null.

Nie znaleziono pasującego konstruktora.

nie można odnaleźć typeName w assemblyFile.

nie można odnaleźć assemblyFile.

Obiekt wywołujący nie ma uprawnień do wywoływania tego konstruktora.

Nie można utworzyć wystąpienia klasy abstrakcyjnej lub ten element członkowski został wywołany z mechanizmem późnego powiązania.

Konstruktor, który został wywołany przez odbicie, rzucił wyjątek.

Obiekt wywołujący nie ma wymaganego FileIOPermission.

activationAttributes nie jest pustą tablicą, a tworzony typ nie pochodzi z MarshalByRefObject.

assemblyFile nie jest prawidłowym zestawem.

-lub-

Środowisko uruchomieniowe języka wspólnego (CLR) w wersji 2.0 lub nowszej jest obecnie ładowane, a assemblyFile został skompilowany dla wersji środowiska CLR nowszej niż aktualnie załadowana wersja. Należy pamiętać, że program .NET Framework w wersji 2.0, 3.0 i 3.5 używa środowiska CLR w wersji 2.0.

Uwagi

Użyj metody ObjectHandle.Unwrap, aby odpakować wartość zwracaną.

Aby uzyskać informacje o innych wyjątkach, które mogą być zgłaszane przez wywoływane metody, zobacz sekcję Wyjątki metod Assembly.LoadFrom i CreateInstance.

Dotyczy