AppDomain.ExecuteAssembly AppDomain.ExecuteAssembly AppDomain.ExecuteAssembly AppDomain.ExecuteAssembly Method

Определение

Выполняет сборку, содержащуюся в указанном файле.Executes the assembly contained in the specified file.

Перегрузки

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

Выполняет сборку, содержащуюся в указанном файле, с использованием заданного свидетельства, аргументов, хэш-значения и хэш-алгоритма.Executes the assembly contained in the specified file, using the specified evidence, arguments, hash value, and hash algorithm.

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

Выполняет сборку, содержащуюся в указанном файле, с использованием заданного свидетельства и аргументов.Executes the assembly contained in the specified file, using the specified evidence and arguments.

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

Выполняет сборку, содержащуюся в указанном файле, с использованием заданных аргументов, хэш-значения и хэш-алгоритма.Executes the assembly contained in the specified file, using the specified arguments, hash value, and hash algorithm.

ExecuteAssembly(String, Evidence) ExecuteAssembly(String, Evidence) ExecuteAssembly(String, Evidence) ExecuteAssembly(String, Evidence)

Выполняет сборку, содержащуюся в указанном файле, с использованием заданного свидетельства.Executes the assembly contained in the specified file, using the specified evidence.

ExecuteAssembly(String, String[]) ExecuteAssembly(String, String[]) ExecuteAssembly(String, String[]) ExecuteAssembly(String, String[])

Выполняет сборку, содержащуюся в указанном файле, с использованием заданных аргументов.Executes the assembly contained in the specified file, using the specified arguments.

ExecuteAssembly(String) ExecuteAssembly(String) ExecuteAssembly(String) ExecuteAssembly(String)

Выполняет сборку, содержащуюся в указанном файле.Executes the assembly contained in the specified file.

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

Предупреждение

Этот API устарел.

Выполняет сборку, содержащуюся в указанном файле, с использованием заданного свидетельства, аргументов, хэш-значения и хэш-алгоритма.Executes the assembly contained in the specified file, using the specified evidence, arguments, hash value, and hash algorithm.

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);
[System.Obsolete("Use an overload that does not take an Evidence parameter")]
[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
Public Function ExecuteAssembly (assemblyFile As String, assemblySecurity As Evidence, args As String(), hashValue As Byte(), hashAlgorithm As AssemblyHashAlgorithm) As Integer

Параметры

assemblyFile
String String String String

Имя файла, содержащего сборку, которую необходимо выполнить.The name of the file that contains the assembly to execute.

assemblySecurity
Evidence Evidence Evidence Evidence

Предоставленное свидетельство для сборки.The supplied evidence for the assembly.

args
String[]

Аргументы, передаваемые в точку входа сборки.The arguments to the entry point of the assembly.

hashValue
Byte[]

Представляет значение вычисляемого хэш-кода.Represents the value of the computed hash code.

hashAlgorithm
AssemblyHashAlgorithm AssemblyHashAlgorithm AssemblyHashAlgorithm AssemblyHashAlgorithm

Представляет хэш-алгоритм, используемый манифестом сборки.Represents the hash algorithm used by the assembly manifest.

Возвраты

Значение, возвращаемое точкой входа сборки.The value returned by the entry point of the assembly.

Исключения

Свойство assemblyFile имеет значение null.assemblyFile is null.

assemblyFile не найден.assemblyFile is not found.

assemblyFile не является допустимой сборкой.assemblyFile is not a valid assembly.

- или --or- Сейчас загружена среда CLR 2.0 или более поздней версии. Сборка assemblyFile скомпилирована в более поздней версии.Version 2.0 or later of the common language runtime is currently loaded and assemblyFile was compiled with a later version.

Предпринята попытка выполнения операции с выгруженным доменом приложения.The operation is attempted on an unloaded application domain.

Сборка или модуль был загружен дважды с двумя разными свидетельствами.An assembly or module was loaded twice with two different evidences.

assemblySecurity не является null.assemblySecurity is not null. Если не включена политика разграничения доступа кода для кода предыдущей версии, assemblySecurity должно иметь значение null.When legacy CAS policy is not enabled, assemblySecurity should be null.

Указанная сборка не имеет точку входа.The specified assembly has no entry point.

Примеры

В следующем примере демонстрируется использование одной из перегрузок ExecuteAssembly в двух разных доменах.The following sample demonstrates using one of the overloads of ExecuteAssembly on two different domains.

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

Комментарии

Сборка начинает выполняться в точке входа, указанной в заголовке .NET Framework.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.

Этот метод загружает сборки с LoadFile помощью метода.This method loads assemblies using the LoadFile method. Сборки также можно выполнять с помощью ExecuteAssemblyByName метода, который загружает сборки Load с помощью метода.You can also execute assemblies using the ExecuteAssemblyByName method, which loads assemblies using the Load method.

Безопасность

SecurityPermission
для загрузки сборки с свидетельством.to load an assembly with evidence. Связанное перечисление: ControlEvidence.Associated enumeration: ControlEvidence.

FileIOPermission
для доступа к чтению из файла или каталога, а также для доступа к данным в самом пути.for access to read from a file or directory, and for access to the information in the path itself. Связанные перечисления: Read, PathDiscovery.Associated enumerations: Read, PathDiscovery.

WebPermission
для чтения URI, который не начинается с "file://".for reading a URI that does not begin with "file://".

UIPermission
для выполнения консольного приложения.to execute a console application. Связанное перечисление: Unrestricted.Associated enumeration: Unrestricted.

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

Предупреждение

Этот API устарел.

Выполняет сборку, содержащуюся в указанном файле, с использованием заданного свидетельства и аргументов.Executes the assembly contained in the specified file, using the specified evidence and arguments.

public:
 int ExecuteAssembly(System::String ^ assemblyFile, System::Security::Policy::Evidence ^ assemblySecurity, cli::array <System::String ^> ^ args);
[System.Obsolete("Use an overload that does not take an Evidence parameter")]
[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);
member this.ExecuteAssembly : string * System.Security.Policy.Evidence * string[] -> int
Public Function ExecuteAssembly (assemblyFile As String, assemblySecurity As Evidence, args As String()) As Integer

Параметры

assemblyFile
String String String String

Имя файла, содержащего сборку, которую необходимо выполнить.The name of the file that contains the assembly to execute.

assemblySecurity
Evidence Evidence Evidence Evidence

Предоставленное свидетельство для сборки.The supplied evidence for the assembly.

args
String[]

Аргументы, передаваемые в точку входа сборки.The arguments to the entry point of the assembly.

Возвраты

Значение, возвращаемое точкой входа сборки.The value returned by the entry point of the assembly.

Реализации

Исключения

Свойство assemblyFile имеет значение null.assemblyFile is null.

assemblyFile не найден.assemblyFile is not found.

assemblyFile не является допустимой сборкой.assemblyFile is not a valid assembly.

- или --or- Сейчас загружена среда CLR 2.0 или более поздней версии. Сборка assemblyFile скомпилирована в более поздней версии.Version 2.0 or later of the common language runtime is currently loaded and assemblyFile was compiled with a later version.

Предпринята попытка выполнения операции с выгруженным доменом приложения.The operation is attempted on an unloaded application domain.

Сборка или модуль был загружен дважды с двумя разными свидетельствами.An assembly or module was loaded twice with two different evidences.

assemblySecurity не является null.assemblySecurity is not null. Если не включена политика разграничения доступа кода для кода предыдущей версии, assemblySecurity должно иметь значение null.When legacy CAS policy is not enabled, assemblySecurity should be null.

Указанная сборка не имеет точку входа.The specified assembly has no entry point.

Примеры

В следующем примере демонстрируется использование одной из перегрузок ExecuteAssembly в двух разных доменах.The following sample demonstrates using one of the overloads of ExecuteAssembly on two different domains.

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

Комментарии

Сборка начинает выполняться в точке входа, указанной в заголовке .NET Framework.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.

Этот метод загружает сборки с LoadFile помощью метода.This method loads assemblies using the LoadFile method. Сборки также можно выполнять с помощью ExecuteAssemblyByName метода, который загружает сборки Load с помощью метода.You can also execute assemblies using the ExecuteAssemblyByName method, which loads assemblies using the Load method.

Безопасность

SecurityPermission
для загрузки сборки с свидетельством.to load an assembly with evidence. Связанное перечисление: ControlEvidence.Associated enumeration: ControlEvidence.

FileIOPermission
для доступа к чтению из файла или каталога, а также для доступа к данным в самом пути.for access to read from a file or directory, and for access to the information in the path itself. Связанные перечисления: Read, PathDiscovery.Associated enumerations: Read, PathDiscovery.

WebPermission
для чтения URI, который не начинается с "file://".for reading a URI that does not begin with "file://".

UIPermission
для выполнения консольного приложения.to execute a console application. Связанное перечисление: Unrestricted.Associated enumeration: Unrestricted.

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

Выполняет сборку, содержащуюся в указанном файле, с использованием заданных аргументов, хэш-значения и хэш-алгоритма.Executes the assembly contained in the specified file, using the specified arguments, hash value, and hash algorithm.

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

Параметры

assemblyFile
String String String String

Имя файла, содержащего сборку, которую необходимо выполнить.The name of the file that contains the assembly to execute.

args
String[]

Аргументы, передаваемые в точку входа сборки.The arguments to the entry point of the assembly.

hashValue
Byte[]

Представляет значение вычисляемого хэш-кода.Represents the value of the computed hash code.

hashAlgorithm
AssemblyHashAlgorithm AssemblyHashAlgorithm AssemblyHashAlgorithm AssemblyHashAlgorithm

Представляет алгоритм хэширования, используемый манифестом сборки.Represents the hash algorithm used by the assembly manifest.

Возвраты

Значение, возвращаемое точкой входа сборки.The value that is returned by the entry point of the assembly.

Исключения

assemblyFile не найден.assemblyFile is not found.

assemblyFile не является допустимой сборкой.assemblyFile is not a valid assembly.

-или--or- assemblyFile была скомпилирована для версии среды CLR, которая является более поздней, чем версия, которая в настоящий момент загружена.assemblyFile was compiled with a later version of the common language runtime than the version that is currently loaded.

Предпринята попытка выполнения операции с выгруженным доменом приложения.The operation is attempted on an unloaded application domain.

Сборка или модуль был загружен дважды с двумя разными свидетельствами.An assembly or module was loaded twice with two different evidences.

Указанная сборка не имеет точку входа.The specified assembly has no entry point.

Примеры

В следующем примере демонстрируется использование одной из перегрузок ExecuteAssembly в двух разных доменах.The following sample demonstrates using one of the overloads of ExecuteAssembly on two different domains.

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

Комментарии

Сборка начинает выполняться в точке входа, указанной в заголовке .NET Framework.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.

Этот метод загружает сборки с LoadFile помощью метода.This method loads assemblies using the LoadFile method. Сборки также можно выполнять с помощью ExecuteAssemblyByName метода, который загружает сборки Load с помощью метода.You can also execute assemblies using the ExecuteAssemblyByName method, which loads assemblies using the Load method.

Безопасность

FileIOPermission
для доступа к чтению из файла или каталога, а также для доступа к данным в самом пути.for access to read from a file or directory, and for access to the information in the path itself. Связанные перечисления: Read, PathDiscovery.Associated enumerations: Read, PathDiscovery.

WebPermission
для чтения URI, который не начинается с "file://".for reading a URI that does not begin with "file://".

UIPermission
для выполнения консольного приложения.to execute a console application. Связанное перечисление: Unrestricted.Associated enumeration: Unrestricted.

ExecuteAssembly(String, Evidence) ExecuteAssembly(String, Evidence) ExecuteAssembly(String, Evidence) ExecuteAssembly(String, Evidence)

Предупреждение

Этот API устарел.

Выполняет сборку, содержащуюся в указанном файле, с использованием заданного свидетельства.Executes the assembly contained in the specified file, using the specified evidence.

public:
 int ExecuteAssembly(System::String ^ assemblyFile, System::Security::Policy::Evidence ^ assemblySecurity);
[System.Obsolete("Use an overload that does not take an Evidence parameter")]
[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);
member this.ExecuteAssembly : string * System.Security.Policy.Evidence -> int
Public Function ExecuteAssembly (assemblyFile As String, assemblySecurity As Evidence) As Integer

Параметры

assemblyFile
String String String String

Имя файла, содержащего сборку, которую необходимо выполнить.The name of the file that contains the assembly to execute.

assemblySecurity
Evidence Evidence Evidence Evidence

Свидетельство для загрузки сборки.Evidence for loading the assembly.

Возвраты

Значение, возвращаемое точкой входа сборки.The value returned by the entry point of the assembly.

Реализации

Исключения

assemblyFile не найден.assemblyFile is not found.

assemblyFile не является допустимой сборкой.assemblyFile is not a valid assembly.

-или--or- Сейчас загружена среда CLR 2.0 или более поздней версии. Сборка assemblyFile скомпилирована в более поздней версии.Version 2.0 or later of the common language runtime is currently loaded and assemblyFile was compiled with a later version.

Предпринята попытка выполнения операции с выгруженным доменом приложения.The operation is attempted on an unloaded application domain.

Сборка или модуль был загружен дважды с двумя разными свидетельствами.An assembly or module was loaded twice with two different evidences.

Указанная сборка не имеет точку входа.The specified assembly has no entry point.

Примеры

В следующем примере демонстрируется использование одной из перегрузок ExecuteAssembly в двух разных доменах.The following sample demonstrates using one of the overloads of ExecuteAssembly on two different domains.

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

Комментарии

Сборка начинает выполняться в точке входа, указанной в заголовке .NET Framework.The assembly begins executing at the entry point specified in the .NET Framework header.

ExecuteAssembly Метод не создает новый процесс или домен приложения и не выполняет метод точки входа в новом потоке.The ExecuteAssembly method does not create a new process or application domain, and it does not execute the entry point method on a new thread.

Этот метод загружает сборки с LoadFile помощью метода.This method loads assemblies using the LoadFile method. Сборки также можно выполнять с помощью ExecuteAssemblyByName метода, который загружает сборки Load с помощью метода.You can also execute assemblies using the ExecuteAssemblyByName method, which loads assemblies using the Load method.

Безопасность

SecurityPermission
для загрузки сборки с свидетельством.to load an assembly with evidence. Связанное перечисление: ControlEvidence.Associated enumeration: ControlEvidence.

FileIOPermission
для доступа к чтению из файла или каталога, а также для доступа к данным в самом пути.for access to read from a file or directory, and for access to the information in the path itself. Связанные перечисления: Read, PathDiscovery.Associated enumerations: Read, PathDiscovery.

WebPermission
для чтения URI, который не начинается с "file://".for reading a URI that does not begin with "file://".

UIPermission
для выполнения консольного приложения.to execute a console application. Связанное перечисление: Unrestricted.Associated enumeration: Unrestricted.

ExecuteAssembly(String, String[]) ExecuteAssembly(String, String[]) ExecuteAssembly(String, String[]) ExecuteAssembly(String, String[])

Выполняет сборку, содержащуюся в указанном файле, с использованием заданных аргументов.Executes the assembly contained in the specified file, using the specified arguments.

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

Параметры

assemblyFile
String String String String

Имя файла, содержащего сборку, которую необходимо выполнить.The name of the file that contains the assembly to execute.

args
String[]

Аргументы, передаваемые в точку входа сборки.The arguments to the entry point of the assembly.

Возвраты

Значение, возвращаемое точкой входа сборки.The value that is returned by the entry point of the assembly.

Исключения

Свойство assemblyFile имеет значение null.assemblyFile is null.

assemblyFile не найден.assemblyFile is not found.

assemblyFile не является допустимой сборкой.assemblyFile is not a valid assembly.

- или --or- assemblyFile была скомпилирована для версии среды CLR, которая является более поздней, чем версия, которая в настоящий момент загружена.assemblyFile was compiled with a later version of the common language runtime than the version that is currently loaded.

Предпринята попытка выполнения операции с выгруженным доменом приложения.The operation is attempted on an unloaded application domain.

Сборка или модуль был загружен дважды с двумя разными свидетельствами.An assembly or module was loaded twice with two different evidences.

Указанная сборка не имеет точку входа.The specified assembly has no entry point.

Примеры

В следующем примере демонстрируется использование одной из перегрузок ExecuteAssembly в двух разных доменах.The following sample demonstrates using one of the overloads of ExecuteAssembly on two different domains.

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

Комментарии

Сборка начинает выполняться в точке входа, указанной в заголовке .NET Framework.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.

Этот метод загружает сборки с LoadFile помощью метода.This method loads assemblies using the LoadFile method. Сборки также можно выполнять с помощью ExecuteAssemblyByName метода, который загружает сборки Load с помощью метода.You can also execute assemblies using the ExecuteAssemblyByName method, which loads assemblies using the Load method.

Безопасность

FileIOPermission
для доступа к чтению из файла или каталога, а также для доступа к данным в самом пути.for access to read from a file or directory, and for access to the information in the path itself. Связанные перечисления: Read, PathDiscovery.Associated enumerations: Read, PathDiscovery.

WebPermission
для чтения URI, который не начинается с "file://".for reading a URI that does not begin with "file://".

UIPermission
для выполнения консольного приложения.to execute a console application. Связанное перечисление: Unrestricted.Associated enumeration: Unrestricted.

ExecuteAssembly(String) ExecuteAssembly(String) ExecuteAssembly(String) ExecuteAssembly(String)

Выполняет сборку, содержащуюся в указанном файле.Executes the assembly contained in the specified file.

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

Параметры

assemblyFile
String String String String

Имя файла, содержащего сборку, которую необходимо выполнить.The name of the file that contains the assembly to execute.

Возвраты

Значение, возвращаемое точкой входа сборки.The value returned by the entry point of the assembly.

Реализации

Исключения

Свойство assemblyFile имеет значение null.assemblyFile is null.

assemblyFile не найден.assemblyFile is not found.

assemblyFile не является допустимой сборкой.assemblyFile is not a valid assembly.

- или --or- Сейчас загружена среда CLR 2.0 или более поздней версии. Сборка assemblyFile скомпилирована в более поздней версии.Version 2.0 or later of the common language runtime is currently loaded and assemblyFile was compiled with a later version.

Предпринята попытка выполнения операции с выгруженным доменом приложения.The operation is attempted on an unloaded application domain.

Сборка или модуль был загружен дважды с двумя разными свидетельствами.An assembly or module was loaded twice with two different evidences.

Указанная сборка не имеет точку входа.The specified assembly has no entry point.

Примеры

В следующем примере демонстрируется использование одной из перегрузок ExecuteAssembly в двух разных доменах.The following sample demonstrates using one of the overloads of ExecuteAssembly on two different domains.

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

Комментарии

Сборка начинает выполняться в точке входа, указанной в заголовке .NET Framework.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.

Этот метод загружает сборки с LoadFile помощью метода.This method loads assemblies using the LoadFile method. Сборки также можно выполнять с помощью ExecuteAssemblyByName метода, который загружает сборки Load с помощью метода.You can also execute assemblies using the ExecuteAssemblyByName method, which loads assemblies using the Load method.

Чтобы создать объект AppDomain для загрузки и выполнения, CreateDomain используйте метод.To create the AppDomain to load and execute, use the CreateDomain method.

Безопасность

FileIOPermission
для доступа к чтению из файла или каталога, а также для доступа к данным в самом пути.for access to read from a file or directory, and for access to the information in the path itself. Связанные перечисления: Read, PathDiscovery.Associated enumerations: Read, PathDiscovery.

WebPermission
для чтения URI, который не начинается с "file://".for reading a URI that does not begin with "file://".

UIPermission
для выполнения консольного приложения.to execute a console application. Связанное перечисление: Unrestricted.Associated enumeration: Unrestricted.

Применяется к