AppDomain.ExecuteAssembly Metodo

Definizione

Esegue l'assembly contenuto nel file specificato.

Overload

Nome Descrizione
ExecuteAssembly(String, Evidence, String[], Byte[], AssemblyHashAlgorithm)
Obsoleti.

Esegue l'assembly contenuto nel file specificato, usando l'evidenza, gli argomenti, il valore hash e l'algoritmo hash specificati.

ExecuteAssembly(String, Evidence, String[])
Obsoleti.

Esegue l'assembly contenuto nel file specificato, utilizzando l'evidenza e gli argomenti specificati.

ExecuteAssembly(String, String[], Byte[], AssemblyHashAlgorithm)

Esegue l'assembly contenuto nel file specificato, usando gli argomenti, il valore hash e l'algoritmo hash specificati.

ExecuteAssembly(String, Evidence)
Obsoleti.

Esegue l'assembly contenuto nel file specificato, utilizzando l'evidenza specificata.

ExecuteAssembly(String, String[])

Esegue l'assembly contenuto nel file specificato utilizzando gli argomenti specificati.

ExecuteAssembly(String)

Esegue l'assembly contenuto nel file specificato.

ExecuteAssembly(String, Evidence, String[], Byte[], AssemblyHashAlgorithm)

Attenzione

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.

Esegue l'assembly contenuto nel file specificato, usando l'evidenza, gli argomenti, il valore hash e l'algoritmo hash specificati.

public:
 int ExecuteAssembly(System::String ^ assemblyFile, System::Security::Policy::Evidence ^ assemblySecurity, cli::array <System::String ^> ^ args, cli::array <System::Byte> ^ hashValue, System::Configuration::Assemblies::AssemblyHashAlgorithm hashAlgorithm);
public int ExecuteAssembly(string assemblyFile, System.Security.Policy.Evidence assemblySecurity, string[] args, byte[] hashValue, System.Configuration.Assemblies.AssemblyHashAlgorithm hashAlgorithm);
[System.Obsolete("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, System.Security.Policy.Evidence assemblySecurity, string[] args, byte[] hashValue, System.Configuration.Assemblies.AssemblyHashAlgorithm hashAlgorithm);
member this.ExecuteAssembly : string * System.Security.Policy.Evidence * string[] * byte[] * System.Configuration.Assemblies.AssemblyHashAlgorithm -> int
[<System.Obsolete("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.")>]
member this.ExecuteAssembly : string * System.Security.Policy.Evidence * string[] * byte[] * System.Configuration.Assemblies.AssemblyHashAlgorithm -> int
Public Function ExecuteAssembly (assemblyFile As String, assemblySecurity As Evidence, args As String(), hashValue As Byte(), hashAlgorithm As AssemblyHashAlgorithm) As Integer

Parametri

assemblyFile
String

Nome del file che contiene l'assembly da eseguire.

assemblySecurity
Evidence

Evidenza fornita per l'assembly.

args
String[]

Argomenti del punto di ingresso dell'assembly.

hashValue
Byte[]

Rappresenta il valore del codice hash calcolato.

hashAlgorithm
AssemblyHashAlgorithm

Rappresenta l'algoritmo hash utilizzato dal manifesto dell'assembly.

Valori restituiti

Valore restituito dal punto di ingresso dell'assembly.

Attributi

Eccezioni

assemblyFile è null.

assemblyFile non viene trovato.

assemblyFile non è un assembly valido per il runtime attualmente caricato.

L'operazione viene tentata in un dominio applicazione scaricato.

Un assembly o un modulo è stato caricato due volte con due prove diverse.

assemblySecurity non nullè . Quando i criteri CAS legacy non sono abilitati, assemblySecurity devono essere null.

L'assembly specificato non ha alcun punto di ingresso.

Si applica a

ExecuteAssembly(String, Evidence, String[])

Attenzione

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.

Esegue l'assembly contenuto nel file specificato, utilizzando l'evidenza e gli argomenti specificati.

public:
 virtual int ExecuteAssembly(System::String ^ assemblyFile, System::Security::Policy::Evidence ^ assemblySecurity, cli::array <System::String ^> ^ args);
public int ExecuteAssembly(string assemblyFile, System.Security.Policy.Evidence assemblySecurity, string[] args);
[System.Obsolete("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, System.Security.Policy.Evidence assemblySecurity, string[] args);
abstract member ExecuteAssembly : string * System.Security.Policy.Evidence * string[] -> int
override this.ExecuteAssembly : string * System.Security.Policy.Evidence * string[] -> int
[<System.Obsolete("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.")>]
abstract member ExecuteAssembly : string * System.Security.Policy.Evidence * string[] -> int
override this.ExecuteAssembly : string * System.Security.Policy.Evidence * string[] -> int
Public Function ExecuteAssembly (assemblyFile As String, assemblySecurity As Evidence, args As String()) As Integer

Parametri

assemblyFile
String

Nome del file che contiene l'assembly da eseguire.

assemblySecurity
Evidence

Evidenza fornita per l'assembly.

args
String[]

Argomenti del punto di ingresso dell'assembly.

Valori restituiti

Valore restituito dal punto di ingresso dell'assembly.

Implementazioni

Attributi

Eccezioni

assemblyFile è null.

assemblyFile non viene trovato.

assemblyFile non è un assembly valido per il runtime attualmente caricato.

L'operazione viene tentata in un dominio applicazione scaricato.

Un assembly o un modulo è stato caricato due volte con due prove diverse.

assemblySecurity non nullè . Quando i criteri CAS legacy non sono abilitati, assemblySecurity devono essere null.

L'assembly specificato non ha alcun punto di ingresso.

Si applica a

ExecuteAssembly(String, String[], Byte[], AssemblyHashAlgorithm)

Esegue l'assembly contenuto nel file specificato, usando gli argomenti, il valore hash e l'algoritmo hash specificati.

public:
 int ExecuteAssembly(System::String ^ assemblyFile, cli::array <System::String ^> ^ args, cli::array <System::Byte> ^ hashValue, System::Configuration::Assemblies::AssemblyHashAlgorithm hashAlgorithm);
public int ExecuteAssembly(string assemblyFile, string[] args, byte[] hashValue, System.Configuration.Assemblies.AssemblyHashAlgorithm hashAlgorithm);
member this.ExecuteAssembly : string * string[] * byte[] * System.Configuration.Assemblies.AssemblyHashAlgorithm -> int
Public Function ExecuteAssembly (assemblyFile As String, args As String(), hashValue As Byte(), hashAlgorithm As AssemblyHashAlgorithm) As Integer

Parametri

assemblyFile
String

Nome del file che contiene l'assembly da eseguire.

args
String[]

Argomenti del punto di ingresso dell'assembly.

hashValue
Byte[]

Rappresenta il valore del codice hash calcolato.

hashAlgorithm
AssemblyHashAlgorithm

Rappresenta l'algoritmo hash utilizzato dal manifesto dell'assembly.

Valori restituiti

Valore restituito dal punto di ingresso dell'assembly.

Eccezioni

assemblyFile è null.

assemblyFile non viene trovato.

assemblyFile non è un assembly valido per il runtime attualmente caricato.

L'operazione viene tentata in un dominio applicazione scaricato.

Un assembly o un modulo è stato caricato due volte con due prove diverse.

L'assembly specificato non ha alcun punto di ingresso.

Si applica a

ExecuteAssembly(String, Evidence)

Attenzione

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.

Esegue l'assembly contenuto nel file specificato, utilizzando l'evidenza specificata.

public:
 virtual int ExecuteAssembly(System::String ^ assemblyFile, System::Security::Policy::Evidence ^ assemblySecurity);
public int ExecuteAssembly(string assemblyFile, System.Security.Policy.Evidence assemblySecurity);
[System.Obsolete("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, System.Security.Policy.Evidence assemblySecurity);
abstract member ExecuteAssembly : string * System.Security.Policy.Evidence -> int
override this.ExecuteAssembly : string * System.Security.Policy.Evidence -> int
[<System.Obsolete("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.")>]
abstract member ExecuteAssembly : string * System.Security.Policy.Evidence -> int
override this.ExecuteAssembly : string * System.Security.Policy.Evidence -> int
Public Function ExecuteAssembly (assemblyFile As String, assemblySecurity As Evidence) As Integer

Parametri

assemblyFile
String

Nome del file che contiene l'assembly da eseguire.

assemblySecurity
Evidence

Evidenza per il caricamento dell'assembly.

Valori restituiti

Valore restituito dal punto di ingresso dell'assembly.

Implementazioni

Attributi

Eccezioni

assemblyFile è null.

assemblyFile non viene trovato.

assemblyFile non è un assembly valido per il runtime attualmente caricato.

L'operazione viene tentata in un dominio applicazione scaricato.

Un assembly o un modulo è stato caricato due volte con due prove diverse.

L'assembly specificato non ha alcun punto di ingresso.

Si applica a

ExecuteAssembly(String, String[])

Esegue l'assembly contenuto nel file specificato utilizzando gli argomenti specificati.

public:
 int ExecuteAssembly(System::String ^ assemblyFile, cli::array <System::String ^> ^ args);
public int ExecuteAssembly(string assemblyFile, string[] args);
member this.ExecuteAssembly : string * string[] -> int
Public Function ExecuteAssembly (assemblyFile As String, args As String()) As Integer

Parametri

assemblyFile
String

Nome del file che contiene l'assembly da eseguire.

args
String[]

Argomenti del punto di ingresso dell'assembly.

Valori restituiti

Valore restituito dal punto di ingresso dell'assembly.

Eccezioni

assemblyFile è null.

assemblyFile non viene trovato.

assemblyFile non è un assembly valido per il runtime attualmente caricato.

L'operazione viene tentata in un dominio applicazione scaricato.

Un assembly o un modulo è stato caricato due volte con due prove diverse.

L'assembly specificato non ha alcun punto di ingresso.

Esempio

L'esempio seguente illustra l'uso di uno degli overload di ExecuteAssembly in due domini diversi.

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"
}
class ExecuteAssemblySnippet {
   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"
   }
}
open System

let currentDomain = AppDomain.CurrentDomain
let otherDomain = AppDomain.CreateDomain "otherDomain"

currentDomain.ExecuteAssembly "MyExecutable.exe"
// Prints "MyExecutable running on [default]"

otherDomain.ExecuteAssembly "MyExecutable.exe"
// Prints "MyExecutable running on otherDomain"
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

End Module 'Test

Commenti

L'assembly inizia l'esecuzione nel punto di ingresso specificato nell'intestazione .NET Framework.

Questo metodo non crea un nuovo processo o un nuovo dominio applicazione e non esegue il metodo del punto di ingresso in un nuovo thread.

Questo metodo carica gli assembly usando il LoadFile metodo . È anche possibile eseguire assembly usando il ExecuteAssemblyByName metodo , che carica gli assembly usando il Load metodo .

Si applica a

ExecuteAssembly(String)

Esegue l'assembly contenuto nel file specificato.

public:
 virtual int ExecuteAssembly(System::String ^ assemblyFile);
public:
 int ExecuteAssembly(System::String ^ assemblyFile);
public int ExecuteAssembly(string assemblyFile);
abstract member ExecuteAssembly : string -> int
override this.ExecuteAssembly : string -> int
member this.ExecuteAssembly : string -> int
Public Function ExecuteAssembly (assemblyFile As String) As Integer

Parametri

assemblyFile
String

Nome del file che contiene l'assembly da eseguire.

Valori restituiti

Valore restituito dal punto di ingresso dell'assembly.

Implementazioni

Eccezioni

assemblyFile è null.

assemblyFile non viene trovato.

assemblyFile non è un assembly valido per il runtime attualmente caricato.

L'operazione viene tentata in un dominio applicazione scaricato.

Un assembly o un modulo è stato caricato due volte con due prove diverse.

L'assembly specificato non ha alcun punto di ingresso.

Esempio

L'esempio seguente illustra l'uso di uno degli overload di ExecuteAssembly in due domini diversi.

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"
}
class ExecuteAssemblySnippet {
   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"
   }
}
open System

let currentDomain = AppDomain.CurrentDomain
let otherDomain = AppDomain.CreateDomain "otherDomain"

currentDomain.ExecuteAssembly "MyExecutable.exe"
// Prints "MyExecutable running on [default]"

otherDomain.ExecuteAssembly "MyExecutable.exe"
// Prints "MyExecutable running on otherDomain"
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

End Module 'Test

Commenti

L'assembly inizia l'esecuzione nel punto di ingresso specificato nell'intestazione .NET Framework.

Questo metodo non crea un nuovo processo o un nuovo dominio applicazione e non esegue il metodo del punto di ingresso in un nuovo thread.

Questo metodo carica gli assembly usando il LoadFile metodo . È anche possibile eseguire assembly usando il ExecuteAssemblyByName metodo , che carica gli assembly usando il Load metodo .

Per creare l'oggetto AppDomain da caricare ed eseguire, usare il CreateDomain metodo .

Si applica a