C # / VS Зависимость проекта работает в проекте, но не в другом - PullRequest
0 голосов
/ 24 января 2019

У меня есть проект, который имеет зависимость от DLL.

У меня есть пример проекта в консоли, который компилируется и работает нормально.

Когда я добавляю тот же код и такую ​​же зависимость от другого проекта (winform, если это имеет значение), он выдает ошибку:

Не удалось загрузить файл или сборку 'xxxx' или одну из ее зависимостей. указанный модуль не найден.

Я проверил все возможные параметры VS, все зависимости есть, они обе одинаковые:

  • То же VS 2017 IDE
  • оба 64 бита
  • те же свойства проекта.
  • те же свойства решения.
  • те же файлы присутствуют в пути к корзине (VS копирует dll в путь)

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

Какие еще настройки я должен проверить?

Я могу найти, открываю ли csproj блокнотом, что у работающего проекта есть строка: <Platform Condition=" '$(Platform)' == '' ">x86</Platform>

и другие <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>

Однако я не вижу эту настройку на VS; я должен вручную изменить csproj?

EDIT:

Изменение .csproj, как указано выше, решило проблему, я полагаю, что она вынудит компилятор компилироваться в 32-битной системе, что объяснит отсутствующие зависимости. Однако в настройках проекта я попробовал использовать «Prefer 32bits».

Интересно, правильно ли это изменить файл проекта вручную и не следует ли это делать из среды IDE?

...