Я получаю сообщение об ошибке “Была предпринята попытка загрузить программу с неправильным форматом” в проекте репликации SQL Server
-
09-06-2019 - |
Вопрос
Точная ошибка заключается в следующем
Не удалось загрузить файл или сборку 'Microsoft.SQLServer.Replication, Version=9.0.242.0, Culture= нейтральный, PublicKeyToken=89845dcd8080cc91' или одна из его зависимостей.Была предпринята попытка загрузить программу с неправильным форматом.
Недавно я снова начал работать над этим проектом после двухмесячного перехода в другой проект.Раньше это работало отлично, и я дважды проверил все ссылки.
Решение 2
Я нашел решение. Я недавно обновил свой компьютер до Windows 2008 Server 64-bit. Пространство имен SqlServer.Replication было написано для 32-разрядных платформ. Все, что мне нужно было сделать, чтобы запустить его снова, это установить целевую платформу в свойствах сборки проекта на X86.
Другие советы
Ниже приведен простой ответ , но вам также может потребоваться включить 32-разрядные приложения в AppPool. Р>
При настройке приложения для запуска на моем локальном компьютере (под управлением Vista 64bit) я обнаружил эту ошибку:
Не удалось загрузить файл или сборку
ChilkatDotNet2
или один из его зависимостей. Была предпринята попытка загрузить программу с неверным Формат. р>
Очевидно, что приложение использует компоненты ChilKat , но может показаться, что используемая нами версия является только 32-битная версия.
Чтобы устранить эту ошибку, я настроил пул приложений в IIS для разрешения 32-битных приложений. Откройте диспетчер IIS, щелкните правой кнопкой мыши пул приложений и выберите «Дополнительные параметры» (см. Ниже)
Затем установите " Включить 32-разрядные приложения " в Истину.
Все готово!
Измените значение Platform Target на странице свойств вашего веб-проекта на Any CPU
.
Перейти в IIS - & GT; Пул приложений - > Расширенные настройки - > Включить 32-битные приложения
Недавно у нас возникла проблема при попытке запустить код из Visual Studio. В этом случае вам нужно сделать
ИНСТРУМЕНТЫ > ВАРИАНТЫ > Проекты и решения > ВЕБ-ПРОЕКТЫ и проверьте " Используйте 64-битную версию IIS Express для веб-сайтов и проектов ".
Для тех, кто получает эту ошибку в проекте ASP.NET MVC 3 , в самой Visual Studio:
В приложении ASP.NET MVC 3, над которым я работаю, я попытался добавить ссылку на Microsoft.SqlServer.BatchParser в проект, чтобы решить проблему, отсутствующую на сервере развертывания. (Наше приложение использует SMO; правильным решением было установить собственный клиент SQL Server и еще пару вещей на сервере развертывания.)
Даже после того, как я удалил ссылку на BatchParser, я продолжал получать " Была сделана попытка ... " ошибка, ссылающаяся на библиотеку BatchParser, на каждой открываемой мной странице ASP.NET MVC 3, и за этой ошибкой следовали десятки ошибок синтаксического анализа страницы.
Если это произойдет с вами, выполните поиск файлов и посмотрите, находится ли библиотека DLL в одной из папок \ bin вашего проекта. Даже если вы перестраиваете, Visual Studio не обязательно очищает все во всех ваших папках \ bin. Когда я удалил DLL из корзины и собрал заново, ошибка исчезла.
У меня было это в приложении MVC5 в Windows 10 против IIS Express.Мое решение заключалось в следующем:
- Инструменты =>
- Параметры =>
- Проекты и решения =>
- Веб-проекты =>
- Используйте 64 разрядную версию IIS Express для веб сайтов и проектов
- Веб-проекты =>
- Проекты и решения =>
- Параметры =>
измените его на 32-битный (правда), он работает
если вы получите эту длину, она не может быть меньше нуля. Имя параметра: проблема длины в настройке сервера iis: просто измените строку подключения в файле web.config, например, имя сервера sql и имя сервера, и перезапустите iis, затем попытайтесь загрузить страницу, на которой он работает
Если Публикация в Visual Studio 2012 при возникновении ошибки, попробуйте снять флажок " Прокомпилировать во время публикации " в мастере публикации.
в приложении Windows Form я делаю это, Щелкните правой кнопкой мыши на Project-> Properties-> Build- > Check Prefer 32-bit checkbox. Спасибо всем
Удалить каталог временных тестов, расположенный здесь C: \ Users (Пользователь) \ AppData \ Local \ Temp \ VisualStudioTestExplorerExtensions \
Установите все проекты на x64 в Visual Studio
Установите для архитектуры процессора по умолчанию значение x64 (Test / TestSettings / Архитектура процессора по умолчанию).
Обязательно очистите файл решения. Надеюсь, это поможет!
Изменение Target Framework в свойствах проекта с .NET Framework 4.7.1 до 4.6.2 мне помогло.