Activator.CreateInstanceFrom Метод

Определение

Создает экземпляр типа с заданным именем, используя для этого файл именованной сборки и конструктор, который наилучшим образом соответствует заданным параметрам.

Перегрузки

CreateInstanceFrom(AppDomain, String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)
Устаревшие..

Создает экземпляр типа с заданным именем в указанном удаленном домене, используя для этого файл именованной сборки и конструктор, который наилучшим образом соответствует заданным параметрам.

CreateInstanceFrom(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)
Устаревшие..

Создает экземпляр типа с заданным именем, используя для этого файл именованной сборки и конструктор, который наилучшим образом соответствует заданным параметрам.

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

Создает экземпляр типа с заданным именем в указанном удаленном домене, используя для этого файл именованной сборки и конструктор, который наилучшим образом соответствует заданным параметрам.

CreateInstanceFrom(String, String, Object[])

Создает экземпляр типа с заданным именем, используя для этого файл именованной сборки и конструктор без параметров.

CreateInstanceFrom(AppDomain, String, String)

Создает экземпляр типа с заданным именем в указанном удаленном домене, используя для этого файл именованной сборки и конструктор без параметров.

CreateInstanceFrom(String, String)

Создает экземпляр типа с заданным именем, используя для этого файл именованной сборки и конструктор без параметров.

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

Создает экземпляр типа с заданным именем, используя для этого файл именованной сборки и конструктор, который наилучшим образом соответствует заданным параметрам.

CreateInstanceFrom(AppDomain, 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 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(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

Параметры

domain
AppDomain

Удаленный домен, в котором создан тип с именем typeName.

assemblyFile
String

Имя файла, содержащего сборку, в которой выполняется поиск типа, заданного параметром typeName.

typeName
String

Имя типа создаваемого экземпляра.

ignoreCase
Boolean

Значение true для выполнения поиска typeName без учета регистра; значение false для выполнения поиска с учетом регистра.

bindingAttr
BindingFlags

Сочетание битовых флагов, влияющих на поиск конструктора typeName. Если значение параметра bindingAttr равно нулю, проводится поиск открытых конструкторов с учетом регистра.

binder
Binder

Объект, который использует параметры bindingAttr и args для поиска и идентификации конструктора typeName. Если значение параметра binder равно null, используется связыватель по умолчанию.

args
Object[]

Массив аргументов, совпадающих по количеству, порядку и типу с параметрами вызываемого конструктора. Если параметр args предоставляет пустой массив или имеет значение null, то вызывается конструктор, который не принимает никаких параметров (конструктор без параметров).

culture
CultureInfo

Сведения о языке и региональных параметрах, которые влияют на приведение args к формальным типам, объявленным для конструктора typeName. Если параметр culture имеет значение null, для текущего потока используется объект CultureInfo.

activationAttributes
Object[]

Массив, состоящий из одного или нескольких атрибутов, которые могут участвовать в активации. Как правило, это массив, содержащий один объект UrlAttribute, определяющий URL-адрес, необходимый для активации удаленного объекта.

Этот параметр связан с объектами, активируемыми клиентом. Активация клиентом — это устаревшая технология, которая сохраняется с целью обеспечения обратной совместимости; ее не рекомендуется использовать для разработки новых приложений. Сейчас в распределенных приложениях следует использовать Windows Communication Foundation.

securityAttributes
Evidence

Сведения, используемые для принятия решений согласно политике безопасности и предоставления разрешений для кода.

Возвращаемое значение

Дескриптор, который необходимо распаковать для доступа к вновь созданному объекту или null для Nullable<T> экземпляров.

Атрибуты

Исключения

Параметр domain или typeName имеет значение null.

Соответствующий конструктор не найден.

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

Не удалось найти assemblyFile.

Вызывающий объект не имеет разрешения на вызов этого конструктора.

Невозможно создать экземпляр абстрактного класса, или этот элемент был вызван с помощь механизма позднего связывания.

Конструктор, который был вызван с помощью отражения, создал исключение.

У вызывающего оператора нет необходимого разрешения FileIOPermission.

activationAttributes не является пустым массивом, а создаваемый тип не является производным от MarshalByRefObject.

assemblyFile не является допустимой сборкой.

-или-

В данный момент загружена среда CLR версии 2.0 или более поздней. Объект assemblyName был скомпилирован для версии среды CLR, более поздней, чем загруженная. Обратите внимание, что .NET Framework версий 2.0, 3.0 и 3.5 использует среду CLR версии 2.0.

Комментарии

Используется CreateInstanceFrom , когда узлу необходимо выполнить код в домене приложения с ограниченными разрешениями безопасности.

Используйте метод для ObjectHandle.Unwrap распаковки возвращаемого значения.

Сведения о других исключениях, которые могут быть вызваны методами, см. в разделе Assembly.LoadFrom Исключения методов и CreateInstance .

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

CreateInstanceFrom(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 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(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

Параметры

assemblyFile
String

Имя файла, содержащего сборку, в которой выполняется поиск типа, заданного параметром typeName.

typeName
String

Имя типа создаваемого экземпляра.

ignoreCase
Boolean

Значение true для выполнения поиска typeName без учета регистра; значение false для выполнения поиска с учетом регистра.

bindingAttr
BindingFlags

Сочетание битовых флагов, влияющих на поиск конструктора typeName. Если значение параметра bindingAttr равно нулю, проводится поиск открытых конструкторов с учетом регистра.

binder
Binder

Объект, который использует параметры bindingAttr и args для поиска и идентификации конструктора typeName. Если значение параметра binder равно null, используется связыватель по умолчанию.

args
Object[]

Массив аргументов, совпадающих по количеству, порядку и типу с параметрами вызываемого конструктора. Если параметр args предоставляет пустой массив или имеет значение null, то вызывается конструктор, который не принимает никаких параметров (конструктор без параметров).

culture
CultureInfo

Сведения о языке и региональных параметрах, которые влияют на приведение args к формальным типам, объявленным для конструктора typeName. Если параметр culture имеет значение null, для текущего потока используется объект CultureInfo.

activationAttributes
Object[]

Массив, состоящий из одного или нескольких атрибутов, которые могут участвовать в активации. Как правило, это массив, содержащий один объект UrlAttribute, определяющий URL-адрес, необходимый для активации удаленного объекта.

Этот параметр связан с объектами, активируемыми клиентом. Активация клиентом — это устаревшая технология, которая сохраняется с целью обеспечения обратной совместимости; ее не рекомендуется использовать для разработки новых приложений. Сейчас в распределенных приложениях следует использовать Windows Communication Foundation.

securityInfo
Evidence

Сведения, используемые для принятия решений согласно политике безопасности и предоставления разрешений для кода.

Возвращаемое значение

Дескриптор, который необходимо распаковать для доступа к вновь созданному объекту или null для Nullable<T> экземпляров.

Атрибуты

Исключения

typeName имеет значение null.

Соответствующий конструктор не найден.

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

Не удалось найти assemblyFile.

Вызывающий объект не имеет разрешения на вызов этого конструктора.

Невозможно создать экземпляр абстрактного класса, или этот элемент был вызван с помощь механизма позднего связывания.

Конструктор, который был вызван с помощью отражения, создал исключение.

Вызывающий оператор не имеет необходимого разрешения FileIOPermission.

activationAttributes не является пустым массивом, а создаваемый тип не является производным от MarshalByRefObject.

assemblyFile не является допустимой сборкой.

-или-

В данный момент загружена среда CLR версии 2.0 или более поздней. Объект assemblyName был скомпилирован для версии среды CLR, более поздней, чем загруженная. Обратите внимание, что .NET Framework версий 2.0, 3.0 и 3.5 использует среду CLR версии 2.0.

Комментарии

Используйте метод для ObjectHandle.Unwrap распаковки возвращаемого значения.

Сведения о других исключениях, которые могут быть вызваны методами, см. в разделе Assembly.LoadFrom Исключения методов и CreateInstance .

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

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

Создает экземпляр типа с заданным именем в указанном удаленном домене, используя для этого файл именованной сборки и конструктор, который наилучшим образом соответствует заданным параметрам.

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

Параметры

domain
AppDomain

Удаленный домен, в котором создан тип с именем typeName.

assemblyFile
String

Имя файла, содержащего сборку, в которой выполняется поиск типа, заданного параметром typeName.

typeName
String

Имя типа создаваемого экземпляра.

ignoreCase
Boolean

Значение true для выполнения поиска typeName без учета регистра; значение false для выполнения поиска с учетом регистра.

bindingAttr
BindingFlags

Сочетание битовых флагов, влияющих на поиск конструктора typeName. Если значение параметра bindingAttr равно нулю, проводится поиск открытых конструкторов с учетом регистра.

binder
Binder

Объект, который использует параметры bindingAttr и args для поиска и идентификации конструктора typeName. Если значение параметра binder равно null, используется связыватель по умолчанию.

args
Object[]

Массив аргументов, совпадающих по количеству, порядку и типу с параметрами вызываемого конструктора. Если параметр args предоставляет пустой массив или имеет значение null, то вызывается конструктор, который не принимает никаких параметров (конструктор без параметров).

culture
CultureInfo

Сведения о языке и региональных параметрах, которые влияют на приведение args к формальным типам, объявленным для конструктора typeName. Если параметр culture имеет значение null, для текущего потока используется объект CultureInfo.

activationAttributes
Object[]

Массив, состоящий из одного или нескольких атрибутов, которые могут участвовать в активации. Как правило, это массив, содержащий один объект UrlAttribute, определяющий URL-адрес, необходимый для активации удаленного объекта.

Этот параметр связан с объектами, активируемыми клиентом. Активация клиентом — это устаревшая технология, которая сохраняется с целью обеспечения обратной совместимости; ее не рекомендуется использовать для разработки новых приложений. Сейчас в распределенных приложениях следует использовать Windows Communication Foundation.

Возвращаемое значение

Дескриптор, который должен быть развернут для доступа к вновь созданному объекту или null для Nullable<T> экземпляров.

Атрибуты

Исключения

Параметр domain или typeName имеет значение null.

Соответствующий конструктор не найден.

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

Не удалось найти assemblyFile.

Вызывающий объект не имеет разрешения на вызов этого конструктора.

Невозможно создать экземпляр абстрактного класса, или этот элемент был вызван с помощь механизма позднего связывания.

Конструктор, который был вызван с помощью отражения, создал исключение.

У вызывающего оператора нет необходимого разрешения FileIOPermission.

activationAttributes не является пустым массивом, а создаваемый тип не является производным от MarshalByRefObject.

assemblyFile не является допустимой сборкой.

-или-

assemblyName был скомпилирован для версии общеязыковой среды выполнения, которая является более поздней, чем версия, которая в настоящий момент загружена.

Комментарии

Используется CreateInstanceFrom , когда узлу необходимо выполнить код в домене приложения с ограниченными разрешениями безопасности.

Используйте метод для ObjectHandle.Unwrap распаковки возвращаемого значения.

Сведения о других исключениях, которые могут создаваться вызываемыми методами, см. в Assembly.LoadFrom разделах Об исключениях методов и CreateInstance .

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

CreateInstanceFrom(String, String, Object[])

Исходный код:
Activator.cs
Исходный код:
Activator.cs
Исходный код:
Activator.cs

Создает экземпляр типа с заданным именем, используя для этого файл именованной сборки и конструктор без параметров.

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

Параметры

assemblyFile
String

Имя файла, содержащего сборку, в которой выполняется поиск типа, заданного параметром typeName.

typeName
String

Имя типа создаваемого экземпляра.

activationAttributes
Object[]

Массив, состоящий из одного или нескольких атрибутов, которые могут участвовать в активации. Как правило, это массив, содержащий один объект UrlAttribute, определяющий URL-адрес, необходимый для активации удаленного объекта.

Этот параметр связан с объектами, активируемыми клиентом. Активация клиентом — это устаревшая технология, которая сохраняется с целью обеспечения обратной совместимости; ее не рекомендуется использовать для разработки новых приложений. Сейчас в распределенных приложениях следует использовать Windows Communication Foundation.

Возвращаемое значение

Дескриптор, который должен быть развернут для доступа к вновь созданному объекту или null для Nullable<T> экземпляров.

Исключения

typeName имеет значение null.

Соответствующий общий конструктор не найден.

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

Не удалось найти assemblyFile.

Вызывающий объект не имеет разрешения на вызов этого конструктора.

Невозможно создать экземпляр абстрактного класса, или этот элемент был вызван с помощь механизма позднего связывания.

Конструктор, который был вызван с помощью отражения, создал исключение.

activationAttributes не является пустым массивом, а создаваемый тип не является производным от MarshalByRefObject.

У вызывающего оператора нет необходимого разрешения FileIOPermission.

assemblyFile не является допустимой сборкой.

-или-

В данный момент загружена среда CLR версии 2.0 или более поздней. Объект assemblyName был скомпилирован для версии среды CLR, более поздней, чем загруженная. Обратите внимание, что .NET Framework версий 2.0, 3.0 и 3.5 использует среду CLR версии 2.0.

Комментарии

Используйте метод для ObjectHandle.Unwrap распаковки возвращаемого значения.

Сведения о других исключениях, которые могут создаваться вызываемыми методами, см. в Assembly.LoadFrom разделе Исключения методов и CreateInstance .

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

CreateInstanceFrom(AppDomain, String, String)

Создает экземпляр типа с заданным именем в указанном удаленном домене, используя для этого файл именованной сборки и конструктор без параметров.

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

Параметры

domain
AppDomain

Удаленный домен, в котором создан тип с именем typeName.

assemblyFile
String

Имя файла, содержащего сборку, в которой выполняется поиск типа, заданного параметром typeName.

typeName
String

Имя типа создаваемого экземпляра.

Возвращаемое значение

Дескриптор, который должен быть развернут для доступа к вновь созданному объекту или null для Nullable<T> экземпляров.

Атрибуты

Исключения

Параметр domain или typeName имеет значение null.

Соответствующий общий конструктор не найден.

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

Не удалось найти assemblyFile.

Вызывающий объект не имеет разрешения на вызов этого конструктора.

Невозможно создать экземпляр абстрактного класса, или этот элемент был вызван с помощь механизма позднего связывания.

Конструктор, который был вызван с помощью отражения, создал исключение.

У вызывающего оператора нет необходимого разрешения FileIOPermission.

assemblyFile не является допустимой сборкой.

-или-

В данный момент загружена среда CLR версии 2.0 или более поздней. Объект assemblyName был скомпилирован для версии среды CLR, более поздней, чем загруженная. Обратите внимание, что .NET Framework версий 2.0, 3.0 и 3.5 использует среду CLR версии 2.0.

Комментарии

Используется CreateInstanceFrom , когда узлу необходимо выполнить код в домене приложения с ограниченными разрешениями безопасности.

Используйте метод для ObjectHandle.Unwrap распаковки возвращаемого значения.

Сведения о других исключениях, которые могут создаваться вызываемыми методами, см. в Assembly.LoadFrom разделе Исключения методов и CreateInstance .

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

CreateInstanceFrom(String, String)

Исходный код:
Activator.cs
Исходный код:
Activator.cs
Исходный код:
Activator.cs

Создает экземпляр типа с заданным именем, используя для этого файл именованной сборки и конструктор без параметров.

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

Параметры

assemblyFile
String

Имя файла, содержащего сборку, в которой выполняется поиск типа, заданного параметром typeName.

typeName
String

Имя типа создаваемого экземпляра.

Возвращаемое значение

Дескриптор, который должен быть развернут для доступа к вновь созданному объекту или null для Nullable<T> экземпляров.

Исключения

typeName имеет значение null.

Соответствующий общий конструктор не найден.

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

Не удалось найти assemblyFile.

Вызывающий объект не имеет разрешения на вызов этого конструктора.

Невозможно создать экземпляр абстрактного класса, или этот элемент был вызван с помощь механизма позднего связывания.

Конструктор, который был вызван с помощью отражения, создал исключение.

У вызывающего оператора нет необходимого разрешения FileIOPermission.

assemblyFile не является допустимой сборкой.

-или-

В данный момент загружена среда CLR версии 2.0 или более поздней. Объект assemblyName был скомпилирован для версии среды CLR, более поздней, чем загруженная. Обратите внимание, что .NET Framework версий 2.0, 3.0 и 3.5 использует среду CLR версии 2.0.

Примеры

В следующем примере кода показано, как вызвать CreateInstanceFrom метод . Этот пример входит в состав более крупного примера использования класса 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)

Комментарии

Используйте метод для ObjectHandle.Unwrap распаковки возвращаемого значения.

Сведения о других исключениях, которые могут создаваться вызываемыми методами, см. в Assembly.LoadFrom разделе Исключения методов и CreateInstance .

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

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

Исходный код:
Activator.cs
Исходный код:
Activator.cs
Исходный код:
Activator.cs

Создает экземпляр типа с заданным именем, используя для этого файл именованной сборки и конструктор, который наилучшим образом соответствует заданным параметрам.

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

Параметры

assemblyFile
String

Имя файла, содержащего сборку, в которой выполняется поиск типа, заданного параметром typeName.

typeName
String

Имя типа создаваемого экземпляра.

ignoreCase
Boolean

Значение true для выполнения поиска typeName без учета регистра; значение false для выполнения поиска с учетом регистра.

bindingAttr
BindingFlags

Сочетание битовых флагов, влияющих на поиск конструктора typeName. Если значение параметра bindingAttr равно нулю, проводится поиск открытых конструкторов с учетом регистра.

binder
Binder

Объект, который использует параметры bindingAttr и args для поиска и идентификации конструктора typeName. Если значение параметра binder равно null, используется связыватель по умолчанию.

args
Object[]

Массив аргументов, совпадающих по количеству, порядку и типу с параметрами вызываемого конструктора. Если параметр args предоставляет пустой массив или имеет значение null, то вызывается конструктор, который не принимает никаких параметров (конструктор без параметров).

culture
CultureInfo

Сведения о языке и региональных параметрах, которые влияют на приведение args к формальным типам, объявленным для конструктора typeName. Если параметр culture имеет значение null, для текущего потока используется объект CultureInfo.

activationAttributes
Object[]

Массив, состоящий из одного или нескольких атрибутов, которые могут участвовать в активации. Как правило, это массив, содержащий один объект UrlAttribute, определяющий URL-адрес, необходимый для активации удаленного объекта.

Этот параметр связан с объектами, активируемыми клиентом. Активация клиентом — это устаревшая технология, которая сохраняется с целью обеспечения обратной совместимости; ее не рекомендуется использовать для разработки новых приложений. Сейчас в распределенных приложениях следует использовать Windows Communication Foundation.

Возвращаемое значение

Дескриптор, который необходимо распаковать для доступа к вновь созданному объекту или null для Nullable<T> экземпляров.

Исключения

typeName имеет значение null.

Соответствующий конструктор не найден.

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

Не удалось найти assemblyFile.

Вызывающий объект не имеет разрешения на вызов этого конструктора.

Невозможно создать экземпляр абстрактного класса, или этот элемент был вызван с помощь механизма позднего связывания.

Конструктор, который был вызван с помощью отражения, создал исключение.

Вызывающий оператор не имеет необходимого разрешения FileIOPermission.

activationAttributes не является пустым массивом, а создаваемый тип не является производным от MarshalByRefObject.

assemblyFile не является допустимой сборкой.

-или-

В данный момент загружена среда CLR версии 2.0 или более поздней. Объект assemblyName был скомпилирован для версии среды CLR, более поздней, чем загруженная. Обратите внимание, что .NET Framework версий 2.0, 3.0 и 3.5 использует среду CLR версии 2.0.

Комментарии

Используйте метод для ObjectHandle.Unwrap распаковки возвращаемого значения.

Сведения о других исключениях, которые могут быть вызваны методами, см. в разделе Assembly.LoadFrom Исключения методов и CreateInstance .

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