Запуск приложения сканирования на 64-битной машине через ClickOnce - PullRequest
3 голосов
/ 20 июля 2010

Хорошо, вот мои настройки.

У меня есть приложение ac #, прекрасно работающее на всех 32-битных компьютерах с Windows XP-Vista-7.У меня уже есть Verisign PFX для поддержки развертывания ClickOnce, и я использую Atalasoft DotTwain 8.0 в качестве помощника сканера стороннего производителя.

Когда я публикую свое приложение, я выбираю «Любой ЦП» в качестве цели платформы.Когда я пытаюсь запустить его на Windows 7 64-bit Home Premium, мое приложение вылетает после установки.

Я пытался переиздать работу на определенной платформе x64, но все равно не получилось.

Есть идеи о том, что я здесь делаю не так?Большое спасибо ~!

1 Ответ

7 голосов
/ 20 июля 2010

Выберите «x86», и я уверен, что это сработает;

Скорее всего, в вашем проекте есть ссылка на x86 (32-разрядная версия), например, DotTwain. «Любой процессор» означает, что .NET Framework будет запускать его как «x64», потому что вы сказали, что все в порядке. Затем он пытается загрузить ссылку, находит ее 32-разрядной и выдает «BadImageFormatException» (обычно).

И так, вам понадобится версия DotTwain, которая не была бы 'ngen-ed', имеет ссылку на ЦП 'Any' либо или выпустила отдельную 64-битную версию, где все ваши ссылки определенно не установлены на «x86» (вы хотите «любой» или «x64»).

(постоянно сталкивайтесь с этой проблемой; есть несколько приложений, работающих на 32-битных, 64-битных и использующих DotTwain и другие компоненты Atalasoft)

Надеюсь, это поможет!

...