AppDomain::ExecuteAssemblyByName Method (String, Evidence)
Note: This API is now obsolete. The non-obsolete alternative is ExecuteAssemblyByName(String).
Executes an assembly given its display name, using the specified evidence.
Assembly: mscorlib (in mscorlib.dll)
[ObsoleteAttribute(L"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( String^ assemblyName, Evidence^ assemblySecurity )
Parameters
- assemblyName
- Type: System::String
The display name of the assembly. See Assembly::FullName.
- assemblySecurity
- Type: System.Security.Policy::Evidence
Evidence for loading the assembly.
| Exception | Condition |
|---|---|
| ArgumentNullException | assemblyName is nullptr. |
| FileNotFoundException | The assembly specified by assemblyName is not found. |
| FileLoadException | The assembly specified by assemblyName was found, but could not be loaded. |
| BadImageFormatException | The assembly specified by assemblyName is not a valid assembly. -or- Version 2.0 or later of the common language runtime is currently loaded and assemblyName was compiled with a later version. |
| AppDomainUnloadedException | The operation is attempted on an unloaded application domain. |
| MissingMethodException | 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.
The ExecuteAssemblyByName method does not create a new process or application domain, and it does not execute the entry point method on a new thread.
Note |
|---|
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. |
- FileIOPermission
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.
- SecurityPermission
to load an assembly with evidence. Associated enumeration: SecurityPermissionFlag::ControlEvidence.
- WebPermission
for access to a Web site, when a display name is redirected to a URL.
- UIPermission
to execute a console application. Associated enumeration: PermissionState::Unrestricted.
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Note