Вот история, с которой я недавно столкнулся, и возможный ответ (?) Я просто хотел поделиться этой информацией, потому что я еще не мог найти ее в stackoverflow.
Я обновил свое решение с VS2008, WinXP, 32-разрядная до VS2010, Win7, 64-разрядная.
Когда я делаю изменения в WinForms, которые генерируют новые файлы RESX, или обновляю файлы RESX, у меня возникают проблемы.
Отладочная сборка сVS2010 не было проблем.Однако для режима Release я должен использовать процесс подписи с задержкой.Теперь этот процесс выдает ошибки в новых файлах RESX, созданных с помощью VS2010.(Снова обратите внимание, что старые файлы RESX НЕ показывают это поведение)
(цель CoreResGen) Search.resx (176,5): ошибка RG0000: Не удалось загрузить файл или сборку xxx.Controls, Version = 1.5 0,Культура = нейтральная, PublicKeyToken = 7acfcc7eabace048 'или одна из ее зависимостей.Проверка строгого имени не удалась.(Кроме HRESULT: 0x8013141A) Строка 176, позиция 5.
Вот часть информации, которую я нашел в Интернете
http://blogs.msdn.com/b/visualstudio/archive/2010/06/19/resgen-exe-error-an-attempt-was-made-to-load-a-program-with-an-incorrect-format.aspx
Мне было интересно,другие люди столкнулись с этим и какой обходной путь они следовали?Никакого обходного пути не будет означать ожидание выхода VS2010 SP1.
К сожалению, я использую сторонние сборки, которые могли быть скомпилированы как 32-битные.(Я не контролирую их процесс сборки)
- 8/11/2010 Некоторая дополнительная информация.
Сам элемент управления не подписан или не подписан с задержкой.Но элемент управления использует компонент из сборки с подписью с задержкой.Обе сборки находятся в одном и том же решении.
Когда я меняю потребляющую сборку на целевую платформу 4.0, проблема решается.Когда я нацеливаюсь на фреймворк 3.5, мы получаем ошибку.