Невозможно найти сборку A_class, версия 2.0.0.0, Culture= нейтральный, PublicKeyToken=null

Я пытаюсь обновить проект с VS2005. Это проект B VB.NET, который зависит от проекта C#, который ссылается на C++ dll, A.dll. Я получаю сообщение об ошибке "Невозможно найти сборку A_class, Версия 2.0.0.0, Culture= нейтральный, PublicKeyToken=null". Целевая платформа проекта C++ - 4.0, и поскольку этот проект зависит от других, я не могу понизить его. Но я установил платформу для проекта VB.NET на 4.0. Что еще относится к версии 2.0.0.0? Я попытался создать новый проект и добавил в него формы vb после того, как успешно его построил. DLL C++ находится в выходном каталоге, если проект VB не находит его там, он не доходит до этой точки. Во время сборки. Я либо не получаю ошибки (но формы не загружаются), либо я получаю 2 ошибки (по одной для каждой формы):

error MSB3103: Invalid Resx file. Could not load file or assembly 'A-class, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. An attempt was made to load a program with an incorrect format. Line 136, position 5.

Пожалуйста, помогите мне, дайте мне предложение, я не знаю, где искать. большое спасибо вам.

1 ответ

Решение

"Была предпринята попытка загрузить программу с неверным форматом"

В 99% случаев это означает, что вы пытаетесь загрузить 32-битную сборку с помощью 64-битных инструментов или наоборот. Номер версии в сообщении об ошибке означает просто номер версии сборки, которую он пытается загрузить; это не имеет ничего общего с целевой версией.NET. В этом случае кажется, что у компилятора ресурсов есть проблемы.

Попробуйте настроить свое решение для явной сборки x86 вместо Any CPU и посмотрите, решит ли это вашу проблему.

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