Сделать программу на C # способной к компиляции в любой операционной системе - PullRequest
4 голосов
/ 08 ноября 2010

Я начал создавать программу на C # в операционной системе Windows XP с 32-битной версией в c # 2008, и теперь я пытаюсь открыть ее в 64-битной операционной системе Windows 7. Возникающая проблема заключается в том, что я не могу запустить программу в c # 2010 на моей 64-битной системе, и она не пройдет мимо Initialize Component (); строка в моем коде. Появляется ошибка «BadImageFormatException не обработана», что, по-моему, связано с изменением системы, в которой я его открываю. Любая помощь в этом мы будем блестящими.

Спасибо

Ответы [ 3 ]

8 голосов
/ 08 ноября 2010

Проблема, с которой вы столкнулись, состоит в том, что вы скомпилировали приложение с любым процессором.Измените его на x86 и перекомпилируйте.

Скорее всего, у вас есть библиотека, от которой вы зависите, это x86.Поскольку ваше приложение скомпилировано как Any CPU, система Win7 x64 загружает его как 64-битное приложение ... и терпит неудачу при попытке загрузить 32-битную библиотеку.

1 голос
/ 08 ноября 2010

В Build-> Configuration Manager установлена ​​ли для вашей платформы значение «Любой ЦП» для каждого проекта?

0 голосов
/ 08 ноября 2010

Для вашего профиля сборки установлено значение AnyCPU, x86 или x64, конечно же, программа компилируется на новом компьютере.

Я предполагаю, что у вас есть все обновления .NET и Visual Studio на каждом компьютере., правильно?

...