Представьте себе ситуацию, то вы разрабатываете веб-приложение, которое либо просто само по себе 64-битное (x64), либо еще и использует какие-либо x64 библиотеки. При попытке запуска отладки такого приложения вы получите сообщение об ошибке из серии BadImageFormatException.
А происходит такое по тому, что IIS Express, используемый в Visual Studio для отладки, работает как 32-битный процесс, в чем легко убедится, взглянув в Task Manager:
И если при использовании версии Vsual Studio до 2012 единственным способом было использование для отладки локального "большого" IIS, соответствующим образом настроив свойства проекта:
(скриншот с 2012 версии, но в 2010 он практически такой же)
Начиная же с версии 2012 появилась возможность заставить Visual Studio чуть более интеллектуальной и использовать для x64 веб-проектов 64-битную версию IIS Express. Если у вас 2012 или 2013 студия, то, прежде всего проверьте, что IIS Express x64 установлен (для этого посмотрите, есть ли у вас в системе директория C:\Program Files\IIS Express\ ).
Если IIS Express x64 не установлен, то скачайте его (вот отсюда: http://www.microsoft.com/ru-ru/download/details.aspx?id=34679) и установите.
После этого остался последний шаг. Закройте Visual Studio, если вы этого до сих пор не сделали, запустите консоль с правами администратора и выполните команду, соответствующую установленной у вас версии Visual Studio.
для Visual Studio 2012:
reg add HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\11.0\WebProjects /v Use64BitIISExpress /t REG_DWORD /d 1
для Visual Studio 2013:
reg add HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\12.0\WebProjects /v Use64BitIISExpress /t REG_DWORD /d 1
Вот и все. Теперь для отладки 64-битных веб-приложений будет использоваться 64-битная версии IIS Express, что опять же легко проверить с помощью Task Manager
Комментариев нет:
Отправить комментарий