Was this page helpful?
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All

AppDomain.ExecuteAssemblyByName Method (AssemblyName, Evidence, String[])

obsoleteCodeEntityM:System.AppDomain.ExecuteAssemblyByName(System.Reflection.AssemblyName,System.String[])Note: This API is now obsolete.

Executes the assembly given an AssemblyName, using the specified evidence and arguments.

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

[ObsoleteAttribute("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 ExecuteAssemblyByName which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
public int ExecuteAssemblyByName(
	AssemblyName assemblyName,
	Evidence assemblySecurity,
	params string[] args


Type: System.Reflection.AssemblyName

An AssemblyName object representing the name of the assembly.

Type: System.Security.Policy.Evidence

Evidence for loading the assembly.

Type: System.String[]

Command-line arguments to pass when starting the process.

Return Value

Type: System.Int32

The value returned by the entry point of the assembly.

Exception Condition

The assembly specified by assemblyName is not found.


The assembly specified by assemblyName was found, but could not be loaded.


The assembly specified byassemblyName is not a valid assembly.


Version 2.0 or later of the common language runtime is currently loaded and assemblyName was compiled with a later version.


The operation is attempted on an unloaded application domain.


assemblySecurity is not null. When legacy CAS policy is not enabled, assemblySecurity should be null.


The specified assembly has no entry point.

The ExecuteAssemblyByName method provides similar functionality to the ExecuteAssembly method, but specifies the assembly by display name or AssemblyName rather than by file location. Therefore, ExecuteAssemblyByName loads assemblies with the Load method rather than with the LoadFile method.

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.


When you use the ExecuteAssemblyByName method with an Evidence parameter, pieces of evidence are merged. Pieces of evidence supplied as an argument to the ExecuteAssemblyByName method supersede pieces of evidence supplied by the loader.


for access to read from a file or directory, for access to the information in the path itself, and for redirecting a display name to a path. Associated enumerations: FileIOPermissionAccess.Read, FileIOPermissionAccess.PathDiscovery.


to load an assembly with evidence. Associated enumeration: SecurityPermissionFlag.ControlEvidence.


for access to a Web site, when a display name is redirected to a URL.


to execute a console application. Associated enumeration: PermissionState.Unrestricted.

.NET Framework
Available since 2.0
Return to top
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
© 2015 Microsoft