ASP.NET 32-битная машина скомпилирована, теперь пытается работать на 64-битной машине - PullRequest
0 голосов
/ 01 мая 2010

У меня есть приложение ASP.NET, которое было скомпилировано на 32-разрядной машине. Есть много разных сборок, на которые есть ссылки. Я открыл основной dll веб-сайта с ILDASM и посмотрел на .corflags. Он заявил, что это было ИЛЛОН. Однако, когда я запускаю веб-сайт локально на 64-разрядной машине (64-разрядная версия Windows XP Pro), я получаю сообщение «Не является допустимым приложением Win32». Разве приложение не должно работать как 64-битное, так как оно было скомпилировано с «AnyCPU»? Как я могу заставить это работать? Я использую .NET 3.5. Я хочу, чтобы приложение работало как 64-разрядное, а не 32-разрядное.

1 Ответ

1 голос
/ 02 мая 2010

Возможно, некоторые из ваших dll не скомпилированы как AnyCPU.

Используйте Process Monitor от sysinternals, чтобы найти его и исправить / изменить.

С монитором процесса вы можете видеть, где не удается загрузить DLL.

Также вы можете использовать dependencyWalker после того, как вы обнаружите некоторые проблемные библиотеки DLL, чтобы увидеть больше информации о DLL, которые не загружены.

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

...