System.BadImageFormatException: не удалось загрузить файл или сборку

C:\Windows\Microsoft.NET\Framework64\v4.0.30319>InstallUtil.exe C:\_PRODUKCIJA\D
ebug\DynamicHtmlTool.exe
Microsoft (R) .NET Framework Installation utility Version 4.0.30319.1
Copyright (c) Microsoft Corporation.  All rights reserved.

Exception occurred while initializing the installation:
System.BadImageFormatException: Could not load file or assembly 'file:///C:\_PRO
DUKCIJA\Debug\DynamicHtmlTool.exe' or one of its dependencies. An attempt was ma
de to load a program with an incorrect format..

C:\Windows\Microsoft.NET\Framework64\v4.0.30319>

Сервис скомпилирован на x86, даже на обоих компьютерах установлен x64, и он работает на моем компьютере. Здесь на сервере где Win 2008 я получаю эту ошибку.

Я пробую решения от Google, но ни один не работает.

Как написать здесь у меня есть x86 проект http://www.davesquared.net/2008/12/systembadimageformatexception-on-64-bit.html

5 ответов

Решение

Похоже, что вы используете 64-битную версию инструмента для установки приложения с архитектурой 32-битной /x86. Ищите 32-битную версию инструмента здесь:

C:\Windows\Microsoft.NET\Framework\v4.0.30319

и он должен установить ваше 32-битное приложение просто отлично.

Попробуйте настроить параметры своих проектов, обычно это связано с проблемами архитектуры x86/x64:

Идите и установите свой выбор как показано:

Я нашел другое решение этой проблемы. По-видимому, в моем IIS 7 не был включен 32-битный режим в моем пуле приложений по умолчанию.

Чтобы включить 32-битный режим, откройте IIS и выберите свой пул приложений. Мой был назван "ASP.NET v4.0".
Щелкните правой кнопкой мыши, перейдите в "Дополнительные параметры" и измените раздел с именем "Включенные 32-разрядные приложения" на true.

Перезагрузите веб-сервер и попробуйте снова.

Я нашел исправление по этой ссылке в блоге: http://darrell.mozingo.net/2009/01/17/running-iis-7-in-32-bit-mode/

Кроме того, вы можете изменить настройки в Visual Studio. В моем случае я пошел в Tools > Options > Projects and Solutions > Web Projects и проверил Use the 64 bit version of IIS Express for web sites and projects - Это было на VS Pro 2015. Ничто другое не исправило это, кроме этого.

У меня было то же исключение при установке с использованием правильной структуры.

Мое решение было запустить CMD от имени администратора.... тогда он работал нормально.

Моя причина была другой, я ссылался на веб-сервис, затем получил это сообщение.

Затем я изменил свою цель .Net Framework 4.0 на.Net Framework 2.0 и снова обратился к своему веб-сервису. После нескольких изменений проблема решена. Там нет ошибки работали нормально.

надеюсь это поможет!

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