Подтвердить что ты не робот

Заставить приложение запускаться под определенной версией .NET?

У меня установлена ​​среда выполнения .NET 2.0, затем я установил среду выполнения .NET 4.0, поэтому у меня есть и то, и другое. Когда я запускаю приложение .NET, есть ли способ принудительно использовать время выполнения?

Изменить/Разъяснение: Я имел в виду безрезультатно, как было создано приложение. Я исхожу из предположения, что среда выполнения .NET 4.0 может запускать .NET-программу, скомпилированную 5 лет назад, которая ориентирована на версию 2.0 (oldprogram.exe). Итак, теперь я нахожусь на машине с обеими версиями, которые могут обрабатывать oldprogram.exe. Какая среда исполнения выбрана? Могу ли я повлиять на то, какое время исполнения выбрано?

4b9b3361

Ответ 1

Да, используйте элемент <supportedRuntime> в файле .exe.config. Например:

<configuration>
   <startup>
      <supportedRuntime version="v2.0.50727"/>
   </startup>
</configuration>

Ответ 2

Посмотрите: Настройка перенаправления привязки сборки

По умолчанию приложения используют набор сборок .NET Framework, которые поставляются с версией времени исполнения, используемой для компиляции приложения. Вы можете использовать атрибут applyTo в элементе <assemblyBinding> в файле конфигурации приложения, чтобы перенаправить ссылки на привязку сборки к определенной версии сборок .NET Framework. Этот необязательный атрибут использует номер версии .NET Framework, чтобы указать, к какой версии он относится. Если атрибут applyTo не указан, элемент <assemblyBinding> применяется ко всем версиям .NET Framework.