Compartir a través de


AppDomain.CreateInstance Método

Definición

Crea una nueva instancia de un tipo especificado definido en un ensamblado especificado.

Sobrecargas

CreateInstance(String, String)

Crea una nueva instancia del tipo especificado definido en el ensamblado especificado.

CreateInstance(String, String, Object[])

Crea una nueva instancia del tipo especificado definido en el ensamblado especificado. Un parámetro especifica una matriz de atributos de activación.

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

Crea una nueva instancia del tipo especificado definido en el ensamblado especificado. Los parámetros especifican un enlazador, marcas de enlace, argumentos de constructor, información específica de la referencia cultural que se usa para interpretar argumentos y atributos de activación opcionales.

CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)
Obsoletos.

Crea una nueva instancia del tipo especificado definido en el ensamblado especificado. Los parámetros especifican un enlazador, marcas de enlace, argumentos de constructor, información específica de la referencia cultural que se usa para interpretar argumentos, atributos de activación y autorización para crear el tipo.

CreateInstance(String, String)

Source:
AppDomain.cs
Source:
AppDomain.cs
Source:
AppDomain.cs

Crea una nueva instancia del tipo especificado definido en el ensamblado especificado.

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

Parámetros

assemblyName
String

Nombre para mostrar del ensamblado. Consulte FullName.

typeName
String

Nombre completo del tipo solicitado, incluido el espacio de nombres, pero no el ensamblado, tal y como devuelve la propiedad FullName.

Devoluciones

Objeto que es un contenedor para la nueva instancia especificada por typeName. El valor devuelto debe desencapsularse para tener acceso al objeto real.

Implementaciones

Excepciones

La operación se intenta en un dominio de aplicación descargado.

assemblyName o typeName es null.

assemblyName no es un ensamblado válido para el entorno de ejecución cargado actualmente.

Un ensamblado o módulo se cargó dos veces con dos evidencias diferentes.

no se encontró assemblyName.

El autor de la llamada no tiene permiso para llamar a este constructor.

No se encontró ningún constructor público coincidente.

no se encontró typeName en assemblyName.

Esta instancia es null.

Comentarios

Este método llama al constructor sin parámetros para typeName.

Consulte AssemblyName para obtener el formato de assemblyName.

Un intento de llamar a CreateInstance en un dominio de aplicación de destino que no sea el dominio de aplicación actual dará como resultado una carga correcta del ensamblado en el dominio de aplicación de destino. Dado que un Assembly no es MarshalByRefObject, cuando este método intenta devolver el Assembly del ensamblado cargado al dominio de aplicación actual, Common Language Runtime intentará cargar el ensamblado en el dominio de aplicación actual y la carga podría producir un error. El ensamblado que se carga en el dominio de aplicación actual podría ser diferente del ensamblado que se cargó primero si la configuración de la ruta de acceso para los dos dominios de aplicación es diferente.

Consulte también

Se aplica a

CreateInstance(String, String, Object[])

Source:
AppDomain.cs
Source:
AppDomain.cs
Source:
AppDomain.cs

Crea una nueva instancia del tipo especificado definido en el ensamblado especificado. Un parámetro especifica una matriz de atributos de activación.

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

Parámetros

assemblyName
String

Nombre para mostrar del ensamblado. Consulte FullName.

typeName
String

Nombre completo del tipo solicitado, incluido el espacio de nombres, pero no el ensamblado, tal y como devuelve la propiedad FullName.

activationAttributes
Object[]

Matriz de uno o varios atributos que pueden participar en la activación. Normalmente, una matriz que contiene un único objeto UrlAttribute que especifica la dirección URL necesaria para activar un objeto remoto.

Este parámetro está relacionado con los objetos activados por el cliente. La activación de cliente es una tecnología heredada que se conserva para la compatibilidad con versiones anteriores, pero no se recomienda para el nuevo desarrollo. En su lugar, las aplicaciones distribuidas deben usar Windows Communication Foundation.

Devoluciones

Objeto que es un contenedor para la nueva instancia especificada por typeName. El valor devuelto debe desencapsularse para tener acceso al objeto real.

Implementaciones

Excepciones

La operación se intenta en un dominio de aplicación descargado.

assemblyName o typeName es null.

assemblyName no es un ensamblado válido para el entorno de ejecución cargado actualmente.

Un ensamblado o módulo se cargó dos veces con dos evidencias diferentes.

no se encontró assemblyName.

El autor de la llamada no tiene permiso para llamar a este constructor.

No se encontró ningún constructor público coincidente.

El autor de la llamada no puede proporcionar atributos de activación para un objeto que no herede de MarshalByRefObject.

no se encontró typeName en assemblyName.

Esta instancia es null.

Comentarios

Este método llama al constructor sin parámetros para typeName.

Consulte AssemblyName para obtener el formato de assemblyName.

Un intento de llamar a CreateInstance en un dominio de aplicación de destino que no sea el dominio de aplicación actual dará como resultado una carga correcta del ensamblado en el dominio de aplicación de destino. Dado que un Assembly no es MarshalByRefObject, cuando este método intenta devolver el Assembly del ensamblado cargado al dominio de aplicación actual, Common Language Runtime intentará cargar el ensamblado en el dominio de aplicación actual y la carga podría producir un error. El ensamblado que se carga en el dominio de aplicación actual podría ser diferente del ensamblado que se cargó primero si la configuración de la ruta de acceso para los dos dominios de aplicación es diferente.

Consulte también

Se aplica a

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

Source:
AppDomain.cs
Source:
AppDomain.cs
Source:
AppDomain.cs

Crea una nueva instancia del tipo especificado definido en el ensamblado especificado. Los parámetros especifican un enlazador, marcas de enlace, argumentos de constructor, información específica de la referencia cultural que se usa para interpretar argumentos y atributos de activación opcionales.

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

Parámetros

assemblyName
String

Nombre para mostrar del ensamblado. Consulte FullName.

typeName
String

Nombre completo del tipo solicitado, incluido el espacio de nombres, pero no el ensamblado, tal y como devuelve la propiedad FullName.

ignoreCase
Boolean

Valor booleano que especifica si se va a realizar una búsqueda que distingue mayúsculas de minúsculas o no.

bindingAttr
BindingFlags

Combinación de cero o más marcas de bits que afectan a la búsqueda del constructor de typeName. Si bindingAttr es cero, se realiza una búsqueda con distinción entre mayúsculas y minúsculas de constructores públicos.

binder
Binder

Objeto que permite el enlace, la coerción de tipos de argumentos, la invocación de miembros y la recuperación de objetos MemberInfo mediante reflexión. Si binder es null, se usa el enlazador predeterminado.

args
Object[]

Argumentos que se van a pasar al constructor. Esta matriz de argumentos debe coincidir en número, orden y escriba los parámetros del constructor que se va a invocar. Si se prefiere el constructor sin parámetros, args debe ser una matriz vacía o null.

culture
CultureInfo

Información específica de la referencia cultural que rige la coerción de args a los tipos formales declarados para el constructor de typeName. Si culture es null, se usa el CultureInfo para el subproceso actual.

activationAttributes
Object[]

Matriz de uno o varios atributos que pueden participar en la activación. Normalmente, una matriz que contiene un único objeto UrlAttribute que especifica la dirección URL necesaria para activar un objeto remoto.

Este parámetro está relacionado con los objetos activados por el cliente. La activación de cliente es una tecnología heredada que se conserva para la compatibilidad con versiones anteriores, pero no se recomienda para el nuevo desarrollo. En su lugar, las aplicaciones distribuidas deben usar Windows Communication Foundation.

Devoluciones

Objeto que es un contenedor para la nueva instancia especificada por typeName. El valor devuelto debe desencapsularse para tener acceso al objeto real.

Excepciones

La operación se intenta en un dominio de aplicación descargado.

assemblyName o typeName es null.

assemblyName no es un ensamblado válido para el entorno de ejecución cargado actualmente.

Un ensamblado o módulo se cargó dos veces con dos evidencias diferentes.

no se encontró assemblyName.

El autor de la llamada no tiene permiso para llamar a este constructor.

No se encontró ningún constructor coincidente.

El autor de la llamada no puede proporcionar atributos de activación para un objeto que no herede de MarshalByRefObject.

no se encontró typeName en assemblyName.

Esta instancia es null.

Comentarios

Consulte AssemblyName para obtener el formato de assemblyName.

Un intento de llamar a CreateInstance en un dominio de aplicación de destino que no sea el dominio de aplicación actual dará como resultado una carga correcta del ensamblado en el dominio de aplicación de destino. Dado que un Assembly no es MarshalByRefObject, cuando este método intenta devolver el Assembly del ensamblado cargado al dominio de aplicación actual, Common Language Runtime intentará cargar el ensamblado en el dominio de aplicación actual y la carga podría producir un error. El ensamblado que se carga en el dominio de aplicación actual podría ser diferente del ensamblado que se cargó primero si la configuración de la ruta de acceso para los dos dominios de aplicación es diferente.

Consulte también

Se aplica a

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

Precaución

Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.

Crea una nueva instancia del tipo especificado definido en el ensamblado especificado. Los parámetros especifican un enlazador, marcas de enlace, argumentos de constructor, información específica de la referencia cultural que se usa para interpretar argumentos, atributos de activación y autorización para crear el tipo.

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

Parámetros

assemblyName
String

Nombre para mostrar del ensamblado. Consulte FullName.

typeName
String

Nombre completo del tipo solicitado, incluido el espacio de nombres, pero no el ensamblado, tal y como devuelve la propiedad FullName.

ignoreCase
Boolean

Valor booleano que especifica si se va a realizar una búsqueda que distingue mayúsculas de minúsculas o no.

bindingAttr
BindingFlags

Combinación de cero o más marcas de bits que afectan a la búsqueda del constructor de typeName. Si bindingAttr es cero, se realiza una búsqueda con distinción entre mayúsculas y minúsculas de constructores públicos.

binder
Binder

Objeto que permite el enlace, la coerción de tipos de argumentos, la invocación de miembros y la recuperación de objetos MemberInfo mediante reflexión. Si binder es null, se usa el enlazador predeterminado.

args
Object[]

Argumentos que se van a pasar al constructor. Esta matriz de argumentos debe coincidir en número, orden y escriba los parámetros del constructor que se va a invocar. Si se prefiere el constructor sin parámetros, args debe ser una matriz vacía o null.

culture
CultureInfo

Información específica de la referencia cultural que rige la coerción de args a los tipos formales declarados para el constructor de typeName. Si culture es null, se usa el CultureInfo para el subproceso actual.

activationAttributes
Object[]

Matriz de uno o varios atributos que pueden participar en la activación. Normalmente, una matriz que contiene un único objeto UrlAttribute que especifica la dirección URL necesaria para activar un objeto remoto.

Este parámetro está relacionado con los objetos activados por el cliente. La activación de cliente es una tecnología heredada que se conserva para la compatibilidad con versiones anteriores, pero no se recomienda para el nuevo desarrollo. En su lugar, las aplicaciones distribuidas deben usar Windows Communication Foundation.

securityAttributes
Evidence

Información utilizada para autorizar la creación de typeName.

Devoluciones

Objeto que es un contenedor para la nueva instancia especificada por typeName. El valor devuelto debe desencapsularse para tener acceso al objeto real.

Implementaciones

Atributos

Excepciones

La operación se intenta en un dominio de aplicación descargado.

assemblyName o typeName es null.

assemblyName no es un ensamblado válido para el entorno de ejecución cargado actualmente.

Un ensamblado o módulo se cargó dos veces con dos evidencias diferentes.

no se encontró assemblyName.

El autor de la llamada no tiene permiso para llamar a este constructor.

No se encontró ningún constructor coincidente.

El autor de la llamada no puede proporcionar atributos de activación para un objeto que no herede de MarshalByRefObject.

-o-

securityAttributes no es null. Cuando la directiva CAS heredada no está habilitada, securityAttributes debe ser null

no se encontró typeName en assemblyName.

Esta instancia es null.

Comentarios

Consulte AssemblyName para obtener el formato de assemblyName.

Un intento de llamar a CreateInstance en un dominio de aplicación de destino que no sea el dominio de aplicación actual dará como resultado una carga correcta del ensamblado en el dominio de aplicación de destino. Dado que un Assembly no es MarshalByRefObject, cuando este método intenta devolver el Assembly del ensamblado cargado al dominio de aplicación actual, Common Language Runtime intentará cargar el ensamblado en el dominio de aplicación actual y la carga podría producir un error. El ensamblado que se carga en el dominio de aplicación actual podría ser diferente del ensamblado que se cargó primero si la configuración de la ruta de acceso para los dos dominios de aplicación es diferente.

Consulte también

Se aplica a