Установка проекта .net 4 на целевом сервере - Ошибочная Система. BadImageFormatException

Я установил платформу .net 4 на одном из моих серверов.

Когда я работаю, проект установки, созданный в Visual Studio - получают следующую ошибку:

Ошибка 1 001 Исключение произошла при инициализации установки. Система. BadImageFormatException: не Мог загрузить файл или блок или одну из его зависимостей. Этот блок создается временем выполнения, более новым, чем в настоящее время загруженное время выполнения, и не может быть загружен.

Я определенно установил платформу .net 4 на целевой машине - что продолжается?

16
задан Alex 20 April 2010 в 14:37
поделиться

2 ответа

В конце концов я нашел решение этой проблемы и написал об этом в блоге: Развертывание проекта .NET 4 - ошибка 1001 (System.BadImageFormatException)


Обновление: Скопировано содержание блога :

«После посещения мероприятий UK Tech Days на прошлой неделе в Лондоне я очень хотел перейти на Visual Studio 2010 и .net 4.0 победитель.

Я преобразовал некоторые из наших проектов здесь, в Crocus, в структуру .net 4 (что было невероятно просто - ничего не сломалось!) Я даже воспользовался некоторыми из быстрых в реализации функций в .net 4, и преобразовал некоторые из наших методов с массовым замещением для использования необязательных параметров.

Одним из проектов, в частности, является служба Windows, которая рассылает заказы на покупку по расписанию. (Я недавно писал о том, как это сломалось из-за того, что Quartz.net ожидал времени начала в формате UTC)

У этого есть связанный с ним проект развертывания Visual Studio.

После сборки обновленной версии проекта .net 4 и развертывания файла .msi на нашем целевом сервере я получил следующую ошибку:

Ошибка 1001 Исключение при инициализации установки. System.BadImageFormatException: не удалось загрузить файл или сборку или одну из их зависимостей. Эта сборка создается средой выполнения более новой, чем текущая загруженная среда выполнения, и не может быть загружена.

Итак, я определенно обновил указанный сервер до .net 4 (на самом деле, дважды - после того, как я впервые получил эту ошибку!)

После некоторого поиска в Google некоторые люди предлагали изменить целевой платформы на моих сборках, что я и сделал, но безрезультатно.

В конце концов я обнаружил проблему.

Вам необходимо установить Условие запуска .NET Framework

Вот как это сделать:

  1. Щелкните правой кнопкой мыши проект развертывания в обозревателе решений. В контекстном меню выберите Просмотр -> Условия запуска
  2. В разделе «Версия» выберите ».NET Framework 4 '

После восстановления и развертывания моего установочного файла все работало нормально ».

27
ответ дан 30 November 2019 в 16:24
поделиться
  1. Щелкните проект установщика, затем выберите «Проект»> «Свойства».
  2. Нажмите кнопку «Предварительные требования»
  3. Установите флажок «Microsoft .NET Framework 4 (x86 и x64)» и снимите флажок с предыдущей версии платформы
  4. Нажмите «ОК» в окне «Предварительные условия» и в окне свойств.
  5. Щелкните правой кнопкой мыши проект установщика и выберите «Просмотр»> «Условия запуска».
  6. Выделите условие .NET Framework и обновите следующие поля в окне свойств
    а. InstallURL: http://msdn.microsoft.com/en-us/netframework/aa569263.aspx
    b. Версия: .NET Framework 4
  7. Перестройте установщик
11
ответ дан 30 November 2019 в 16:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: