Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez aussi afficher la version anglaise dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte.
Traduction
Anglais
Cette documentation est archivée et n’est pas conservée.

AppDomain.ExecuteAssembly, méthode (String, Evidence)

Remarque : cette API est maintenant obsolète. L'alternative non obsolète est ExecuteAssembly(String).

Exécute l'assembly contenu dans le fichier spécifié à l'aide de la preuve spécifiée.

Espace de noms :  System
Assembly :  mscorlib (dans 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 ExecuteAssembly which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
public int ExecuteAssembly(
	string assemblyFile,
	Evidence assemblySecurity
)

Paramètres

assemblyFile
Type : System.String
Nom du fichier contenant l'assembly à exécuter.
assemblySecurity
Type : System.Security.Policy.Evidence
Preuve pour le chargement de l'assembly.

Valeur de retour

Type : System.Int32
Valeur retournée par le point d'entrée de l'assembly.

Implémentations

_AppDomain.ExecuteAssembly(String, Evidence)

ExceptionCondition
ArgumentNullException

assemblyFile est null.

FileNotFoundException

assemblyFile est introuvable.

BadImageFormatException

assemblyFile n'est pas un assembly valide.

ou

La version 2.0 ou une version ultérieure du Common Language Runtime est actuellement chargée et assemblyFile a été compilé avec une version antérieure.

AppDomainUnloadedException

La tentative d'opération est en cours sur un domaine d'application non chargé.

FileLoadException

Un assembly ou un module a été chargé à deux reprises avec deux preuves différentes.

MissingMethodException

L'assembly spécifié n'a aucun point d'entrée.

L'exécution de l'assembly commence au point d'entrée spécifié dans l'en-tête .NET Framework.

La méthode ExecuteAssembly ne génère ni un nouveau processus ni un nouveau domaine d'application et elle n'exécute pas la méthode de point d'entrée sur un nouveau thread.

Cette méthode charge des assemblys à l'aide de la méthode LoadFile. Vous pouvez également exécuter des assemblys à l'aide de la méthode ExecuteAssemblyByName, laquelle charge les assemblys à l'aide de la méthode Load.

L'exemple suivant illustre l'utilisation d'une des surcharges de ExecuteAssembly sur deux domaines différents.


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"
   }
}


.NET Framework

Pris en charge dans : 3.5, 3.0, 2.0, 1.1, 1.0
Obsolète (avertissement du compilateur) dans 4

.NET Framework Client Profile

Pris en charge dans : 3.5 SP1
Obsolète (avertissement du compilateur) dans 4

Windows 7, Windows Vista SP1 ou ultérieur, Windows XP SP3, Windows XP SP2 Édition x64, Windows Server 2008 (installation minimale non prise en charge), Windows Server 2008 R2 (installation minimale prise en charge avec SP1 ou version ultérieure), Windows Server 2003 SP2

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Date

Historique

Motif

Mai 2010

Ajout de l'exception MissingMethodException et de l'autorisation UIPermission manquante.

Commentaires client.

Afficher: