2013-04-05 4 views
1

У меня есть приложение .NET, которое я разрабатываю на протяжении многих лет (около 15 проектов, некоторые из которых довольно большие), и я просто столкнулся со следующим исключением при попытке запуска Это.BadImageFormatException при запуске с включенной платформой приложений

System.BadImageFormatException было необработанное сообщение: Не удалось загрузить файл или сборку 'system.runtime.remoting, Version = 4.0.0.0, культура = нейтральной, PublicKeyToken = b77a5c561934e089' или один из его зависимостей. Была сделана попытка загрузить программу с неправильным форматом.

Существует не какой-либо стек вызовов - это происходит до запуска в мой код, поэтому я даже не могу войти. Я использовал эту DLL в некоторых проектах, но теперь я прошел и полностью удалил все ссылки на него, но я все еще получаю ошибку. Это происходит только с этим проектом (я могу запустить другие проекты в рамках решения ok и другие проекты из других решений в порядке).

EDIT

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

EDIT 2 После много более беспорядочного, я думаю, что это вызвано инфраструктурой приложения, использующей удаленный доступ для обеспечения того, что это приложение одного экземпляра. Тем не менее, отражатель .NET, похоже, указывает, что это не должно выполняться, если я сниму опцию одного экземпляра, но у меня все еще есть проблема, даже если я это сделаю. Тем не менее, он все еще входит в объем метода, который использует типы из этой сборки (Microsoft.VisualBasic.ApplicationServices.ApplicationBase.Run), поэтому я предполагаю, что это то, что заставляет его пытаться разрешить эту сборку. Хотя все это интересно, на самом деле он не дает никакого ответа, почему я получаю это исключение. Я попытался воспроизвести его с пустым проектом, и это прекрасно работает - оба установлены в одних и тех же настройках среды приложения, как на .NET 4.0, так и на x86. Я довольно тупой, куда идти отсюда.

+0

32/64 проблема обычно - например. первая ссылка http://stackoverflow.com/questions/2728560/badimageformatexception-when-loading-32-bit-dll-target-is-x86 – NSGaga

+0

Возможно, но если я даже не ссылаюсь на нее, то как мне решить !? – wizzardmr42

+0

у вас есть что-то, что от этого зависит - трудно сказать - это может означать «что угодно» :) – NSGaga

ответ

0

Это может произойти, когда вы изменили целевую структуру .csproj и вернули ее обратно к тому, с чего вы начали.

Убедитесь, что 1, если поддерживается Runtime version = «другое время выполнения от цели проекта cs» под тегом запуска в app.config.

Удостоверьтесь, что 2 Это означает, что проверка других автогенерированных или других файлов в папке с параметрами свойств может быть связана с отсутствием рассогласования между этими файлами и тем, что определено в файле .csproj.

Это может просто сэкономить много времени, прежде чем вы начнете пробовать разные вещи с помощью свойств проекта для преодоления ошибки.