Невозможно запустить 32-битные скомпилированные приложения WPF в 64-битной Windows 7 - PullRequest
2 голосов
/ 01 ноября 2009

Я создал проект WPF в VS2008 и скомпилировал его с любыми процессорами, x64 и x86. Любой процессор и x64 работает, но при компиляции в x86 приложение зависает при работе через VS2008 и падает при запуске без отладки. Отладка с помощью WinDbg Я вижу StackOverflowException и иногда MissingMethodException, относящиеся к методам WPF.

Здравый смысл говорит здесь о том, что CLR не загружает правильные сборки или что-то подобное при запуске 32-битных приложений WPF. Я попытался переустановить .NET Framework 3.5 SP1, но это не решает проблему. Я не знаю, как проверить правильность загрузки или использования правильных сборок.

Есть идеи?

ОБНОВЛЕНИЕ: Не реальное решение, но лучшее, что я мог сделать быстро, это переустановить Windows 7

Ответы [ 3 ]

1 голос
/ 12 января 2010

Попробуйте использовать правильный компилятор во всех проектах вашего решения:

  1. Свойства
  2. Сборка
  3. Цель платформы
0 голосов
/ 27 мая 2010

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

0 голосов
/ 01 ноября 2009

Попробуйте заставить Windows всегда использовать 32-битную CLR и посмотрите, все ли происходит сбой:

C: \ WINDOWS \ Microsoft.NET \ Framework64 \ v2.0.50727 \ Ldr64.exe setwow

-Oisin

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...