AppDomain.ExecuteAssembly Yöntem

Tanım

Belirtilen dosyada bulunan derlemeyi yürütür.

Aşırı Yüklemeler

ExecuteAssembly(String, Evidence, String[], Byte[], AssemblyHashAlgorithm)
Geçersiz.

Belirtilen kanıt, bağımsız değişkenler, karma değer ve karma algoritmasını kullanarak belirtilen dosyada bulunan derlemeyi yürütür.

ExecuteAssembly(String, Evidence, String[])
Geçersiz.

Belirtilen kanıt ve bağımsız değişkenleri kullanarak belirtilen dosyada bulunan derlemeyi yürütür.

ExecuteAssembly(String, String[], Byte[], AssemblyHashAlgorithm)
Geçersiz.

Belirtilen bağımsız değişkenleri, karma değeri ve karma algoritmasını kullanarak belirtilen dosyada bulunan derlemeyi yürütür.

ExecuteAssembly(String, Evidence)
Geçersiz.

Belirtilen dosyada bulunan derlemeyi, belirtilen kanıtı kullanarak yürütür.

ExecuteAssembly(String, String[])

Belirtilen dosyada bulunan derlemeyi, belirtilen bağımsız değişkenleri kullanarak yürütür.

ExecuteAssembly(String)

Belirtilen dosyada bulunan derlemeyi yürütür.

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

Dikkat

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.

Belirtilen kanıt, bağımsız değişkenler, karma değer ve karma algoritmasını kullanarak belirtilen dosyada bulunan derlemeyi yürütür.

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

Parametreler

assemblyFile
String

Yürütülecek derlemeyi içeren dosyanın adı.

assemblySecurity
Evidence

Derleme için sağlanan kanıt.

args
String[]

Derlemenin giriş noktası için bağımsız değişkenler.

hashValue
Byte[]

Hesaplanan karma kodun değerini temsil eder.

hashAlgorithm
AssemblyHashAlgorithm

Derleme bildirimi tarafından kullanılan karma algoritmayı temsil eder.

Döndürülenler

Derlemenin giriş noktası tarafından döndürülen değer.

Öznitelikler

Özel durumlar

assemblyFile, null değeridir.

assemblyFile bulunamadı.

assemblyFile şu anda yüklü olan çalışma zamanı için geçerli bir derleme değil.

İşlem, yüklenmemiş bir uygulama etki alanında deneniyor.

Bir derleme veya modül iki farklı kanıtla iki kez yüklendi.

assemblySecurity değil null. Eski CAS ilkesi etkinleştirilmediğinde olmalıdır assemblySecuritynull.

Belirtilen derlemede hiç giriş noktası yok.

Örnekler

Aşağıdaki örnekte, iki farklı etki alanı üzerindeki aşırı yüklemelerinden birinin kullanılması gösterilmektedir ExecuteAssembly .

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

Açıklamalar

Derleme, .NET Framework üstbilgisinde belirtilen giriş noktasında yürütmeyi başlatır.

Bu yöntem, yeni bir işlem veya uygulama etki alanı oluşturmaz ve girdi noktası yöntemini yeni bir iş parçacığında yürütmez.

Bu yöntem, yöntemini kullanarak LoadFile derlemeleri yükler. Ayrıca yöntemini kullanarak ExecuteAssemblyByName derlemeleri yükleyen yöntemini kullanarak Load derlemeleri yürütebilirsiniz.

Şunlara uygulanır

ExecuteAssembly(String, Evidence, String[])

Dikkat

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.

Belirtilen kanıt ve bağımsız değişkenleri kullanarak belirtilen dosyada bulunan derlemeyi yürütür.

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

Parametreler

assemblyFile
String

Yürütülecek derlemeyi içeren dosyanın adı.

assemblySecurity
Evidence

Derleme için sağlanan kanıt.

args
String[]

Derlemenin giriş noktası için bağımsız değişkenler.

Döndürülenler

Derlemenin giriş noktası tarafından döndürülen değer.

Uygulamalar

Öznitelikler

Özel durumlar

assemblyFile, null değeridir.

assemblyFile bulunamadı.

assemblyFile şu anda yüklü olan çalışma zamanı için geçerli bir derleme değil.

İşlem, yüklenmemiş bir uygulama etki alanında deneniyor.

Bir derleme veya modül iki farklı kanıtla iki kez yüklendi.

assemblySecurity değil null. Eski CAS ilkesi etkinleştirilmediğinde olmalıdır assemblySecuritynull.

Belirtilen derlemede hiç giriş noktası yok.

Örnekler

Aşağıdaki örnekte, iki farklı etki alanı üzerindeki aşırı yüklemelerinden birinin kullanılması gösterilmektedir ExecuteAssembly .

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

Açıklamalar

Derleme, .NET Framework üstbilgisinde belirtilen giriş noktasında yürütmeyi başlatır.

Bu yöntem, yeni bir işlem veya uygulama etki alanı oluşturmaz ve girdi noktası yöntemini yeni bir iş parçacığında yürütmez.

Bu yöntem, yöntemini kullanarak LoadFile derlemeleri yükler. Ayrıca yöntemini kullanarak ExecuteAssemblyByName derlemeleri yükleyen yöntemini kullanarak Load derlemeleri yürütebilirsiniz.

Şunlara uygulanır

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

Kaynak:
AppDomain.cs
Kaynak:
AppDomain.cs
Kaynak:
AppDomain.cs

Dikkat

Code Access Security is not supported or honored by the runtime.

Belirtilen bağımsız değişkenleri, karma değeri ve karma algoritmasını kullanarak belirtilen dosyada bulunan derlemeyi yürütür.

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);
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public int ExecuteAssembly (string assemblyFile, string?[]? args, 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
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
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

Parametreler

assemblyFile
String

Yürütülecek derlemeyi içeren dosyanın adı.

args
String[]

Derlemenin giriş noktası için bağımsız değişkenler.

hashValue
Byte[]

Hesaplanan karma kodun değerini temsil eder.

hashAlgorithm
AssemblyHashAlgorithm

Derleme bildirimi tarafından kullanılan karma algoritmayı temsil eder.

Döndürülenler

Derlemenin giriş noktası tarafından döndürülen değer.

Öznitelikler

Özel durumlar

assemblyFile, null değeridir.

assemblyFile bulunamadı.

assemblyFile şu anda yüklü olan çalışma zamanı için geçerli bir derleme değil.

İşlem, yüklenmemiş bir uygulama etki alanında deneniyor.

Bir derleme veya modül iki farklı kanıtla iki kez yüklendi.

Belirtilen derlemede hiç giriş noktası yok.

Örnekler

Aşağıdaki örnekte, iki farklı etki alanı üzerindeki aşırı yüklemelerinden birinin kullanılması gösterilmektedir ExecuteAssembly .

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

Açıklamalar

Dikkat

Kod Erişim Güvenliği (CAS), .NET Framework ve .NET'in tüm sürümlerinde kullanım dışı bırakılmıştır. .NET'in son sürümleri CAS ek açıklamalarını dikkate almaz ve CAS ile ilgili API'ler kullanılıyorsa hata üretir. Geliştiriciler, güvenlik görevlerini yerine getirmek için alternatif yöntemler aramalıdır.

Derleme, .NET Framework üstbilgisinde belirtilen giriş noktasında yürütmeyi başlatır.

Bu yöntem, yeni bir işlem veya uygulama etki alanı oluşturmaz ve girdi noktası yöntemini yeni bir iş parçacığında yürütmez.

Bu yöntem, yöntemini kullanarak LoadFile derlemeleri yükler. Ayrıca yöntemini kullanarak ExecuteAssemblyByName derlemeleri yükleyen yöntemini kullanarak Load derlemeleri yürütebilirsiniz.

Şunlara uygulanır

ExecuteAssembly(String, Evidence)

Dikkat

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.

Belirtilen dosyada bulunan derlemeyi, belirtilen kanıtı kullanarak yürütür.

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

Parametreler

assemblyFile
String

Yürütülecek derlemeyi içeren dosyanın adı.

assemblySecurity
Evidence

Derleme yüklemesi için kanıt.

Döndürülenler

Derlemenin giriş noktası tarafından döndürülen değer.

Uygulamalar

Öznitelikler

Özel durumlar

assemblyFile, null değeridir.

assemblyFile bulunamadı.

assemblyFile şu anda yüklü olan çalışma zamanı için geçerli bir derleme değil.

İşlem, yüklenmemiş bir uygulama etki alanında deneniyor.

Bir derleme veya modül iki farklı kanıtla iki kez yüklendi.

Belirtilen derlemede hiç giriş noktası yok.

Örnekler

Aşağıdaki örnekte, iki farklı etki alanı üzerindeki aşırı yüklemelerinden birinin kullanılması gösterilmektedir ExecuteAssembly .

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

Açıklamalar

Derleme, .NET Framework üstbilgisinde belirtilen giriş noktasında yürütmeyi başlatır.

ExecuteAssembly yöntemi yeni bir işlem veya uygulama etki alanı oluşturmaz ve yeni bir iş parçacığında giriş noktası yöntemini yürütmez.

Bu yöntem, yöntemini kullanarak LoadFile derlemeleri yükler. Ayrıca yöntemini kullanarak ExecuteAssemblyByName derlemeleri yükleyen yöntemini kullanarak Load derlemeleri yürütebilirsiniz.

Şunlara uygulanır

ExecuteAssembly(String, String[])

Kaynak:
AppDomain.cs
Kaynak:
AppDomain.cs
Kaynak:
AppDomain.cs

Belirtilen dosyada bulunan derlemeyi, belirtilen bağımsız değişkenleri kullanarak yürütür.

public:
 int ExecuteAssembly(System::String ^ assemblyFile, cli::array <System::String ^> ^ args);
public int ExecuteAssembly (string assemblyFile, 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

Parametreler

assemblyFile
String

Yürütülecek derlemeyi içeren dosyanın adı.

args
String[]

Derlemenin giriş noktası için bağımsız değişkenler.

Döndürülenler

Derlemenin giriş noktası tarafından döndürülen değer.

Özel durumlar

assemblyFile, null değeridir.

assemblyFile bulunamadı.

assemblyFile şu anda yüklü olan çalışma zamanı için geçerli bir derleme değil.

İşlem, yüklenmemiş bir uygulama etki alanında deneniyor.

Bir derleme veya modül iki farklı kanıtla iki kez yüklendi.

Belirtilen derlemede hiç giriş noktası yok.

Örnekler

Aşağıdaki örnekte, iki farklı etki alanı üzerindeki aşırı yüklemelerinden birinin kullanılması gösterilmektedir ExecuteAssembly .

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

Açıklamalar

Derleme, .NET Framework üstbilgisinde belirtilen giriş noktasında yürütmeyi başlatır.

Bu yöntem, yeni bir işlem veya uygulama etki alanı oluşturmaz ve girdi noktası yöntemini yeni bir iş parçacığında yürütmez.

Bu yöntem, yöntemini kullanarak LoadFile derlemeleri yükler. Ayrıca yöntemini kullanarak ExecuteAssemblyByName derlemeleri yükleyen yöntemini kullanarak Load derlemeleri yürütebilirsiniz.

Şunlara uygulanır

ExecuteAssembly(String)

Kaynak:
AppDomain.cs
Kaynak:
AppDomain.cs
Kaynak:
AppDomain.cs

Belirtilen dosyada bulunan derlemeyi yürütür.

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

Parametreler

assemblyFile
String

Yürütülecek derlemeyi içeren dosyanın adı.

Döndürülenler

Derlemenin giriş noktası tarafından döndürülen değer.

Uygulamalar

Özel durumlar

assemblyFile, null değeridir.

assemblyFile bulunamadı.

assemblyFile şu anda yüklü olan çalışma zamanı için geçerli bir derleme değil.

İşlem, yüklenmemiş bir uygulama etki alanında deneniyor.

Bir derleme veya modül iki farklı kanıtla iki kez yüklendi.

Belirtilen derlemede hiç giriş noktası yok.

Örnekler

Aşağıdaki örnekte, iki farklı etki alanı üzerindeki aşırı yüklemelerinden birinin kullanılması gösterilmektedir ExecuteAssembly .

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

Açıklamalar

Derleme, .NET Framework üstbilgisinde belirtilen giriş noktasında yürütmeyi başlatır.

Bu yöntem, yeni bir işlem veya uygulama etki alanı oluşturmaz ve girdi noktası yöntemini yeni bir iş parçacığında yürütmez.

Bu yöntem, yöntemini kullanarak LoadFile derlemeleri yükler. Ayrıca yöntemini kullanarak ExecuteAssemblyByName derlemeleri yükleyen yöntemini kullanarak Load derlemeleri yürütebilirsiniz.

Yüklenip yürütülecek öğesini AppDomain oluşturmak için yöntemini kullanın CreateDomain .

Şunlara uygulanır