AppDomain.ExecuteAssembly Method (String)
Executes the assembly contained in the specified file.
Namespace: System
Assembly: mscorlib (in mscorlib.dll)
Parameters
- assemblyFile
- Type: System.String
The name of the file that contains the assembly to execute.
Implements
_AppDomain.ExecuteAssembly(String)| Exception | Condition |
|---|---|
| ArgumentNullException | assemblyFile is null. |
| FileNotFoundException | assemblyFile is not found. |
| BadImageFormatException | assemblyFile is not a valid assembly. -or- Version 2.0 or later of the common language runtime is currently loaded and assemblyFile was compiled with a later version. |
| AppDomainUnloadedException | The operation is attempted on an unloaded application domain. |
| FileLoadException | An assembly or module was loaded twice with two different evidences. |
| MissingMethodException | The specified assembly has no entry point. |
The assembly begins executing at the entry point specified in the .NET Framework header.
This method does not create a new process or application domain, and it does not execute the entry point method on a new thread.
This method loads assemblies using the LoadFile method. You can also execute assemblies using the ExecuteAssemblyByName method, which loads assemblies using the Load method.
To create the AppDomain to load and execute, use the CreateDomain method.
The following sample demonstrates using one of the overloads of ExecuteAssembly on two different domains.
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" } }
- FileIOPermission
for access to read from a file or directory, and for access to the information in the path itself. Associated enumerations: FileIOPermissionAccess.Read, FileIOPermissionAccess.PathDiscovery.
- WebPermission
for reading a URI that does not begin with "file://".
- UIPermission
to execute a console application. Associated enumeration: PermissionState.Unrestricted.
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.