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

Параметры

assemblyName
String

Отображаемое имя сборки. См. раздел FullName.

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

Параметры

assemblyName
String

Отображаемое имя сборки. См. раздел FullName.

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

Параметры

assemblyName
String

Отображаемое имя сборки. См. раздел FullName.

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

Параметры

assemblyName
String

Отображаемое имя сборки. См. раздел FullName.

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. Если не включена политика разграничения доступа кода для кода предыдущей версии, securityAttributes должно иметь значение null

Не удалось найти typename в assemblyName.

Этот экземпляр имеет значение null.

Комментарии

Формат см AssemblyName . в разделе assemblyName.

Попытка вызова CreateInstance в целевом домене приложения, который не является текущим доменом приложения, приведет к успешной загрузке сборки в целевом домене приложения. Assembly Так как не MarshalByRefObjectявляется , когда этот метод пытается вернуть Assembly для загруженной сборки в текущий домен приложения, среда CLR попытается загрузить сборку в текущий домен приложения, и загрузка может завершиться ошибкой. Сборка, загруженная в текущий домен приложения, может отличаться от сборки, которая была загружена первым, если параметры пути для двух доменов приложений отличаются.

См. также раздел

Применяется к