Архив метки: FileLoadException

Задание useLegacyV2RuntimeActivationPolicy во время выполнения

Проблема загрузки сборок скомпилированных под устаревший CLR давно известна. Старые библиотеки отказываются работать в CLR 4 и выше, если принудительно не задать в app.config разрешение на выполнение этих сборок в новом райнтайме:

<configuration>
  <startup useLegacyV2RuntimeActivationPolicy="true">
    <supportedRuntime version="v4.0"/>
  </startup>
</configuration>

Без этой настройки получим исключение FileLoadException:
Сборка для смешанного режима построена на основе версии “v2.0.50727” среды выполнения и не может быть загружена в среде выполнения 4.0 без дополнительных конфигурационных данных.

Что же делать, если нет желания или возможности таскать с собой app.config?
К счастью, можно задать параметр useLegacyV2RuntimeActivationPolicy во время выполнения.

Читать далее