Actualización: noviembre 2007
Ejecuta el ensamblado que contiene el archivo especificado.
Espacio de nombres:
System
Ensamblado:
mscorlib (en mscorlib.dll)
Visual Basic (Declaración)
Public Function ExecuteAssembly ( _
assemblyFile As String _
) As Integer
Dim instance As AppDomain
Dim assemblyFile As String
Dim returnValue As Integer
returnValue = instance.ExecuteAssembly(assemblyFile)
public int ExecuteAssembly(
string assemblyFile
)
public:
virtual int ExecuteAssembly(
String^ assemblyFile
) sealed
public final int ExecuteAssembly(
String assemblyFile
)
public final function ExecuteAssembly(
assemblyFile : String
) : int
Parámetros
- assemblyFile
- Tipo: System..::.String
Nombre del archivo que contiene el ensamblado que se va a ejecutar.
Valor devuelto
Tipo:
System..::.Int32
Valor devuelto por el punto de entrada del ensamblado.
Implementaciones
_AppDomain..::.ExecuteAssembly(String)
| Excepción | Condición |
|---|
| ArgumentNullException |
El valor de assemblyFile es nullNothingnullptrreferencia null (Nothing en Visual Basic).
|
| FileNotFoundException |
No se ha encontrado assemblyFile.
|
| BadImageFormatException |
assemblyFile no es un ensamblado válido.
-O bien-
Actualmente está cargada la versión 2.0 o posterior de Common Language Runtime y assemblyFile se ha compilado con una versión posterior.
|
| AppDomainUnloadedException |
Se ha intentado realizar la operación en un dominio de aplicación descargado.
|
| FileLoadException |
Se ha cargado un ensamblado o módulo dos veces con dos evidencias diferentes.
|
El ensamblado comienza a ejecutarse en el punto de entrada especificado en el encabezado de .NET Framework.
Este método no crea un nuevo proceso ni tampoco un nuevo dominio de aplicación ni ejecuta el método de punto de entrada en un nuevo subproceso.
Este método carga ensamblados utilizando el método LoadFile. También puede ejecutar ensamblados con el método ExecuteAssemblyByName, que carga ensamblados utilizando el método Load.
Para crear el AppDomain que se va a cargar y ejecutar, utilice el método CreateDomain.
Nota de la plataforma Windows Mobile para Pocket PC, Windows Mobile para Smartphone, Windows CE:
No se admite la carga de ensamblados en una zona de código neutral de dominio para que los utilicen varios dominios de aplicación.
En el siguiente ejemplo se muestra cómo utilizar una de las sobrecargas de ExecuteAssembly en dos dominios diferentes.
Module Test
Sub Main()
Dim currentDomain As AppDomain = AppDomain.CurrentDomain
Dim otherDomain As AppDomain = AppDomain.CreateDomain("otherDomain")
currentDomain.ExecuteAssembly("MyExecutable.exe")
' Prints "MyExecutable running on [default]"
otherDomain.ExecuteAssembly("MyExecutable.exe")
' Prints "MyExecutable running on otherDomain"
End Sub 'Main
End Module 'Test
class Test {
public static void Main() {
AppDomain currentDomain = AppDomain.CurrentDomain;
AppDomain otherDomain = AppDomain.CreateDomain("otherDomain");
currentDomain.ExecuteAssembly("MyExecutable.exe");
// Prints "MyExecutable running on [default]"
otherDomain.ExecuteAssembly("MyExecutable.exe");
// Prints "MyExecutable running on otherDomain"
}
}
int main()
{
AppDomain^ currentDomain = AppDomain::CurrentDomain;
AppDomain^ otherDomain = AppDomain::CreateDomain( "otherDomain" );
currentDomain->ExecuteAssembly( "MyExecutable.exe" );
// Prints S"MyExecutable running on [default]"
otherDomain->ExecuteAssembly( "MyExecutable.exe" );
// Prints S"MyExecutable running on otherDomain"
}
Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile para Smartphone, Windows Mobile para Pocket PC, Xbox 360
.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.
.NET Framework
Compatible con: 3.5, 3.0, 2.0, 1.1, 1.0
.NET Compact Framework
Compatible con: 3.5, 2.0, 1.0
XNA Framework
Compatible con: 2.0, 1.0
Referencia