Exportar (0) Imprimir
Expandir todo
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

AssemblyBuilder.DefineDynamicModule (Método) (String, String)

Define un módulo dinámico con persistencia con el nombre especificado que se guardará en el archivo indicado. No se emite información de símbolos.

Espacio de nombres:  System.Reflection.Emit
Ensamblado:  mscorlib (en mscorlib.dll)

public ModuleBuilder DefineDynamicModule(
	string name,
	string fileName
)

Parámetros

name
Tipo: System.String
Nombre del módulo dinámico. Debe tener una longitud inferior a 260 caracteres.
fileName
Tipo: System.String
Nombre del archivo en el que se debe guardar el módulo dinámico.

Valor devuelto

Tipo: System.Reflection.Emit.ModuleBuilder
Objeto ModuleBuilder que representa el módulo dinámico definido.

ExcepciónCondición
ArgumentNullException

name o fileName es null.

ArgumentException

La longitud de name o fileName es cero.

O bien

La longitud de name es mayor o igual que 260.

O bien

fileName contiene una especificación de ruta de acceso (por ejemplo, un componente de directorio).

O bien

Hay un conflicto con el nombre de otro archivo que pertenece a este ensamblado.

InvalidOperationException

Este ensamblado se ha guardado anteriormente.

NotSupportedException

Se ha llamado a este ensamblado en un ensamblado dinámico con el atributo Run.

SecurityException

El llamador no dispone del permiso requerido.

ExecutionEngineException

No se puede cargar el ensamblado para el sistema de escritura de símbolos predeterminado.

O bien

No se encuentra el tipo que implementa la interfaz del sistema de escritura de símbolos predeterminado.

Para definir un módulo dinámico con persistencia, este ensamblado debe crearse con el atributo Save o RunAndSave.

Si desea que el módulo contenga el manifiesto del ensamblado, name debe ser igual que el nombre del ensamblado (es decir, la propiedad AssemblyName.Name de AssemblyName que se utiliza para crear el ensamblado dinámico) y fileName debe ser igual que el nombre de archivo que especifique al guardar el ensamblado.

En un ensamblado con un solo módulo, ese módulo debe contener el manifiesto del ensamblado.

NotaNota

Para suprimir las optimizaciones durante la depuración de módulos dinámicos, aplique el atributo DebuggableAttribute al ensamblado dinámico antes de llamar a DefineDynamicModule. Cree una instancia de DebuggableAttribute con el marcador DisableOptimizations y aplíquela utilizando el método SetCustomAttribute. El atributo debe aplicarse al ensamblado dinámico. No tiene ningún efecto si se aplica al módulo.

NotaNota

A partir de .NET Framework 2.0 Service Pack 1, este miembro ya no necesita ReflectionPermission con el marcador ReflectionPermissionFlag.ReflectionEmit. (Vea Problemas de seguridad en la emisión de la reflexión.) Para usar esta funcionalidad, el destino de la aplicación debe ser .NET Framework 3.5 o posterior.

[Visual Basic, C#]

En el siguiente ejemplo de código se muestra cómo crear un módulo dinámico con persistencia mediante DefineDynamicModule.


	   AppDomain myAppDomain = Thread.GetDomain(); 
	   AssemblyName myAsmName = new AssemblyName();
	   myAsmName.Name = "MyAssembly";
	   AssemblyBuilder myAsmBuilder = myAppDomain.DefineDynamicAssembly(
							myAsmName,
							AssemblyBuilderAccess.Run);
	   // Create a dynamic module that can be saved as the specified DLL name.
	   ModuleBuilder myModuleBuilder = myAsmBuilder.DefineDynamicModule("MyModule3",
									    "MyModule3.dll");


.NET Framework

Compatible con: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Compatible con: 4, 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft