Не мог загрузить файл или блок … или одна из его зависимостей. Попытка была предпринята для загрузки программы неверным форматом (.resx файл)

Я получаю следующее сообщение об ошибке при компиляции или попытке запустить мое приложение в Windows 7 64 бита. Я обыскивал Интернет, и у многих людей есть то же сообщение об ошибке. Однако ни одно из решений не решает мою проблему или ситуацию. Я использую Visual Studio 2010.

Сообщение об ошибке

Ошибка 38 не Могла загрузить файл или блок 'file:///D:/Projects/Windows Projects/Weld/Components/FileAttachments/FileAttachments/FileAttachments/bin/x86/Debug/FileAttaching.dll' или одна из его зависимостей. Попытка была предпринята для загрузки программы неверным форматом. Строка 1212, положение 5. D:\Projects\Windows Projects\Weld\Weld\Weld.UI\frmMain.resx 1212 5 Сварок. UI

Описание

Хорошо, таким образом, у меня есть два проекта, проект UI и проект FileAttachment. Проект UI имеет ссылку на проект FileAttachment. Когда я компилирую проект UI в режиме "Any CPU", все хорошо работает, и он работает. Я предполагаю, что 'Любой ЦП' будет работать в 64-разрядном режиме, когда я скомпилирую, поскольку это - платформа, я использую.

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

Я нахожу это нечетным, который это компилирует и хорошо работает в 64-разрядном, но не 32-разрядное. Однако при компиляции и развертывании пользователям как 'Любой ЦП', если у этих пользователей есть x86, он все еще работает на них без любых проблем. Я просто не могу скомпилировать или работать как x86 на моем ПК. Снова, я могу скомпилировать как Любой ЦП и развернуться к 32-разрядному ПК без любых проблем.

Никакой проектируют, ссылаются на любые 64 бита только файлы DLL. Оба проекта проверяются для предназначения для 32-разрядных файлов DLL и блоков Платформы.NET.

Я должен скомпилировать и выполнить это локально под 32-разрядным режимом. Мне нужен JIT, редактируют/продолжают, среди прочего.

Вот строка кода в resx файле, который вызывает проблему:

 
....{mime data}....
 

resx файл проверяется, чтобы быть сгенерированным для.NET 2.0 и только ссылается на.NET 2,0 блока и не.NET 4,0 версии.

Как я могу решить эту проблему? Я искал Интернет и нашел сотни людей с тем же сообщением об ошибке, но другую проблему.

36
задан Ciro Santilli 新疆改造中心法轮功六四事件 21 August 2013 в 07:54
поделиться

2 ответа

Похоже, это ошибка VS 2010 со списками изображений. См. https://connect.microsoft.com/VisualStudio/feedback/details/532584/error-when-compiling-resx-file-seems-related-to-beta2-bug-5252020?wa=wsignin1.0

Я смог использовать указанное обходное решение, чтобы заставить его работать для меня.


Posted by Luis Mack on 5/12/2010 at 8:50 AM Я обнаружил ту же проблему, только для конкретного проекта при компиляции на 64-битной машине. Исправление, которое ПОХОЖЕ работает, заключается в ручном изменении одного символа в потоке изображений КАЖДЫЙ раз, когда пользовательский элемент управления или форма редактируется в дизайнере

.          AAEAAAD/////AQAAAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w

Изменить на      AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w

That is 00LjAuMC4w 0yLjAuMC4w в конце строки (00 обратно в 0y)


Jim

33
ответ дан 27 November 2019 в 06:11
поделиться

Я столкнулся с такой же проблемой в одной из своих программ. Проблема в том, что по какой-то причине Visual Studio генерирует 64-битные блоки данных для некоторых свойств элементов управления GUI, которые затем не может загрузить при компиляции в x86.

В моем случае я смог обойти проблему, удалив проблемные блоки данных из файла resx вместе со строками кода в файле cs.designer, которые ссылаются на эти блоки. Мне удалось это сделать, поскольку соответствующие строки исходного кода, которые присваивают ссылаемое свойство, являются избыточными и не нужны. Единственное, что раздражает, это то, что мне приходится заново исправлять эти исправления каждый раз, когда я изменяю что-либо в дизайнере, так как Visual Studio затем добавляет обратно плохой код.

1
ответ дан 27 November 2019 в 06:11
поделиться