AppDomain.CreateInstance Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Создает новый экземпляр указанного типа, определенного в указанной сборке.
Перегрузки
CreateInstance(String, String) |
Создает новый экземпляр указанного типа, определенного в указанной сборке. |
CreateInstance(String, String, Object[]) |
Создает новый экземпляр указанного типа, определенного в указанной сборке. Параметр задает массив атрибутов активации. |
CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[]) |
Создает новый экземпляр указанного типа, определенного в указанной сборке. Параметры указывают привязку, флаги привязки, аргументы конструктора, сведения о языке и региональных параметрах, используемые для интерпретации аргументов и необязательные атрибуты активации. |
CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence) |
Устаревшие..
Создает новый экземпляр указанного типа, определенного в указанной сборке. Параметры указывают привязку, флаги привязки, аргументы конструктора, сведения о языке и региональных параметрах, используемые для интерпретации аргументов, атрибутов активации и авторизации для создания типа. |
CreateInstance(String, String)
- Исходный код:
- AppDomain.cs
- Исходный код:
- AppDomain.cs
- Исходный код:
- AppDomain.cs
Создает новый экземпляр указанного типа, определенного в указанной сборке.
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
Параметры
- typeName
- String
Полное имя запрошенного типа, включая пространство имен, но не сборку, как возвращается свойством FullName.
Возвращаемое значение
Объект, который является оболочкой для нового экземпляра, указанного typeName
. Возвращаемое значение должно быть раскрыто для доступа к реальному объекту.
Реализации
Исключения
Операция выполняется в выгруженном домене приложения.
assemblyName
или typeName
null
.
assemblyName
не является допустимой сборкой для текущей загруженной среды выполнения.
Сборка или модуль была загружена дважды с двумя разными доказательствами.
assemblyName
не найден.
Вызывающий объект не имеет разрешения на вызов этого конструктора.
Не найдено соответствующего общедоступного конструктора.
typeName
не найден в assemblyName
.
Этот экземпляр null
.
Комментарии
Этот метод вызывает конструктор без параметров для typeName
.
Сведения о формате assemblyName
см. в AssemblyName.
Попытка вызова CreateInstance в целевом домене приложения, который не является текущим доменом приложения, приведет к успешной загрузке сборки в целевом домене приложения. Так как Assembly не MarshalByRefObject, когда этот метод пытается вернуть Assembly для загруженной сборки в текущий домен приложения, среда CLR попытается загрузить сборку в текущий домен приложения, а загрузка может завершиться ошибкой. Сборка, загруженная в текущий домен приложения, может отличаться от сборки, загруженной сначала, если параметры пути для двух доменов приложений отличаются.
См. также раздел
Применяется к
CreateInstance(String, String, Object[])
- Исходный код:
- AppDomain.cs
- Исходный код:
- AppDomain.cs
- Исходный код:
- AppDomain.cs
Создает новый экземпляр указанного типа, определенного в указанной сборке. Параметр задает массив атрибутов активации.
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
Параметры
- typeName
- String
Полное имя запрошенного типа, включая пространство имен, но не сборку, как возвращается свойством FullName.
- activationAttributes
- Object[]
Массив одного или нескольких атрибутов, которые могут участвовать в активации. Как правило, массив, содержащий один объект UrlAttribute, указывающий URL-адрес, необходимый для активации удаленного объекта.
Этот параметр связан с объектами, активированными клиентом. Активация клиента — это устаревшая технология, которая сохраняется для обратной совместимости, но не рекомендуется для новой разработки. Распределенные приложения должны использовать Windows Communication Foundation.
Возвращаемое значение
Объект, который является оболочкой для нового экземпляра, указанного typeName
. Возвращаемое значение должно быть раскрыто для доступа к реальному объекту.
Реализации
Исключения
Операция выполняется в выгруженном домене приложения.
assemblyName
или typeName
null
.
assemblyName
не является допустимой сборкой для текущей загруженной среды выполнения.
Сборка или модуль была загружена дважды с двумя разными доказательствами.
assemblyName
не найден.
Вызывающий объект не имеет разрешения на вызов этого конструктора.
Не найдено соответствующего общедоступного конструктора.
Вызывающий объект не может предоставлять атрибуты активации для объекта, который не наследуется от MarshalByRefObject.
typeName
не найден в assemblyName
.
Этот экземпляр null
.
Комментарии
Этот метод вызывает конструктор без параметров для typeName
.
Сведения о формате assemblyName
см. в AssemblyName.
Попытка вызова CreateInstance в целевом домене приложения, который не является текущим доменом приложения, приведет к успешной загрузке сборки в целевом домене приложения. Так как Assembly не MarshalByRefObject, когда этот метод пытается вернуть Assembly для загруженной сборки в текущий домен приложения, среда CLR попытается загрузить сборку в текущий домен приложения, а загрузка может завершиться ошибкой. Сборка, загруженная в текущий домен приложения, может отличаться от сборки, загруженной сначала, если параметры пути для двух доменов приложений отличаются.
См. также раздел
Применяется к
CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])
- Исходный код:
- AppDomain.cs
- Исходный код:
- AppDomain.cs
- Исходный код:
- AppDomain.cs
Создает новый экземпляр указанного типа, определенного в указанной сборке. Параметры указывают привязку, флаги привязки, аргументы конструктора, сведения о языке и региональных параметрах, используемые для интерпретации аргументов и необязательные атрибуты активации.
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
Параметры
- typeName
- String
Полное имя запрошенного типа, включая пространство имен, но не сборку, как возвращается свойством FullName.
- ignoreCase
- Boolean
Логическое значение, указывающее, следует ли выполнять поиск с учетом регистра.
- bindingAttr
- BindingFlags
Сочетание нулевых или более битовых флагов, влияющих на поиск конструктора typeName
. Если bindingAttr
равно нулю, выполняется поиск с учетом регистра для общедоступных конструкторов.
- binder
- Binder
Объект, который включает привязку, приведение типов аргументов, вызов элементов и получение объектов MemberInfo с помощью отражения. Если binder
имеет значение NULL, используется привязка по умолчанию.
- args
- Object[]
Аргументы, которые необходимо передать конструктору. Этот массив аргументов должен соответствовать числу, порядку и типу параметров вызываемого конструктора. Если конструктор без параметров предпочтителен, args
должен быть пустым массивом или null.
- culture
- CultureInfo
Сведения, относящиеся к языку и региональным параметрам, которые управляют приведением args
к формальным типам, объявленным для конструктора typeName
. Если culture
null
, используется CultureInfo для текущего потока.
- activationAttributes
- Object[]
Массив одного или нескольких атрибутов, которые могут участвовать в активации. Как правило, массив, содержащий один объект UrlAttribute, указывающий URL-адрес, необходимый для активации удаленного объекта.
Этот параметр связан с объектами, активированными клиентом. Активация клиента — это устаревшая технология, которая сохраняется для обратной совместимости, но не рекомендуется для новой разработки. Распределенные приложения должны использовать Windows Communication Foundation.
Возвращаемое значение
Объект, который является оболочкой для нового экземпляра, указанного typeName
. Возвращаемое значение должно быть раскрыто для доступа к реальному объекту.
Исключения
Операция выполняется в выгруженном домене приложения.
assemblyName
или typeName
null
.
assemblyName
не является допустимой сборкой для текущей загруженной среды выполнения.
Сборка или модуль была загружена дважды с двумя разными доказательствами.
assemblyName
не найден.
Вызывающий объект не имеет разрешения на вызов этого конструктора.
Не найден соответствующий конструктор.
Вызывающий объект не может предоставлять атрибуты активации для объекта, который не наследуется от MarshalByRefObject.
typeName
не найден в assemblyName
.
Этот экземпляр null
.
Комментарии
Сведения о формате assemblyName
см. в AssemblyName.
Попытка вызова CreateInstance в целевом домене приложения, который не является текущим доменом приложения, приведет к успешной загрузке сборки в целевом домене приложения. Так как Assembly не MarshalByRefObject, когда этот метод пытается вернуть Assembly для загруженной сборки в текущий домен приложения, среда CLR попытается загрузить сборку в текущий домен приложения, а загрузка может завершиться ошибкой. Сборка, загруженная в текущий домен приложения, может отличаться от сборки, загруженной сначала, если параметры пути для двух доменов приложений отличаются.
См. также раздел
Применяется к
CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)
Внимание!
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:
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
Параметры
- typeName
- String
Полное имя запрошенного типа, включая пространство имен, но не сборку, как возвращается свойством FullName.
- ignoreCase
- Boolean
Логическое значение, указывающее, следует ли выполнять поиск с учетом регистра.
- bindingAttr
- BindingFlags
Сочетание нулевых или более битовых флагов, влияющих на поиск конструктора typeName
. Если bindingAttr
равно нулю, выполняется поиск с учетом регистра для общедоступных конструкторов.
- binder
- Binder
Объект, который включает привязку, приведение типов аргументов, вызов элементов и получение объектов MemberInfo с помощью отражения. Если binder
имеет значение NULL, используется привязка по умолчанию.
- args
- Object[]
Аргументы, которые необходимо передать конструктору. Этот массив аргументов должен соответствовать числу, порядку и типу параметров вызываемого конструктора. Если конструктор без параметров предпочтителен, args
должен быть пустым массивом или null.
- culture
- CultureInfo
Сведения, относящиеся к языку и региональным параметрам, которые управляют приведением args
к формальным типам, объявленным для конструктора typeName
. Если culture
null
, используется CultureInfo для текущего потока.
- activationAttributes
- Object[]
Массив одного или нескольких атрибутов, которые могут участвовать в активации. Как правило, массив, содержащий один объект UrlAttribute, указывающий URL-адрес, необходимый для активации удаленного объекта.
Этот параметр связан с объектами, активированными клиентом. Активация клиента — это устаревшая технология, которая сохраняется для обратной совместимости, но не рекомендуется для новой разработки. Распределенные приложения должны использовать Windows Communication Foundation.
- securityAttributes
- Evidence
Сведения, используемые для авторизации создания typeName
.
Возвращаемое значение
Объект, который является оболочкой для нового экземпляра, указанного typeName
. Возвращаемое значение должно быть раскрыто для доступа к реальному объекту.
Реализации
- Атрибуты
Исключения
Операция выполняется в выгруженном домене приложения.
assemblyName
или typeName
null
.
assemblyName
не является допустимой сборкой для текущей загруженной среды выполнения.
Сборка или модуль была загружена дважды с двумя разными доказательствами.
assemblyName
не найден.
Вызывающий объект не имеет разрешения на вызов этого конструктора.
Не найден соответствующий конструктор.
Вызывающий объект не может предоставлять атрибуты активации для объекта, который не наследуется от MarshalByRefObject.
-или-
securityAttributes
не null
. Если устаревшая политика CAS не включена, securityAttributes
следует null
typeName
не найден в assemblyName
.
Этот экземпляр null
.
Комментарии
Сведения о формате assemblyName
см. в AssemblyName.
Попытка вызова CreateInstance в целевом домене приложения, который не является текущим доменом приложения, приведет к успешной загрузке сборки в целевом домене приложения. Так как Assembly не MarshalByRefObject, когда этот метод пытается вернуть Assembly для загруженной сборки в текущий домен приложения, среда CLR попытается загрузить сборку в текущий домен приложения, а загрузка может завершиться ошибкой. Сборка, загруженная в текущий домен приложения, может отличаться от сборки, загруженной сначала, если параметры пути для двух доменов приложений отличаются.