Сборка в смешанном режиме строится против версии v2.0.50727 среды выполнения и не может быть загружена во время выполнения 4.0

Я получил это исключение после запуска исполняемого файла в командной строке:

"Сборка смешанного режима построена на версии v2.0.50727 среды выполнения и не может быть загружена в среде выполнения 4.0 без дополнительной информации о конфигурации".

После поиска этой проблемы в интернете, я нашел один из способов - настроить файл App.Config. Это хорошо работает в VS2010, но все еще генерирует ту же ошибку в командном режиме.

Так есть ли способ решить эту проблему с помощью командной строки, так как создание новой версии.dll невозможно.

Спасибо!

3 ответа

Решение

Убедитесь, что вы настроили файл App.config и файл ProgramName.exe.config.

Например:

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

Вы также можете попробовать использовать useLegacyV2RuntimeActivationPolicy="true"

   <startup useLegacyV2RuntimeActivationPolicy="true">
      <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
    </startup>

Другое решение может состоять в том, чтобы перекомпилировать все смешанные сборки (C++/CLI), от которых вы зависите для.NET 4.0. Часто это невозможно, если эти сборки являются сторонними.

Другие вопросы по тегам