Visual Studio 2010 не позволяет мне отлаживать мой код

Итак, этот интересный вопрос заставлял меня за последние пару часов. Visual Studio 2010 Ultimate больше не прикрепляет отладчик и позволяет мне отлаживать мой код.

Если я использую встроенный сервер разработки, все работает отлично. Если я переключусь на "Использовать локальный веб-сервер IIS" (http://localhost/), то все, что он прикрепляет к w3wp.exe, но не DLL или PDB загружаются для чего угодно. Я могу перейти в Debug > Windows > Modules, и буквально ничего не загружается в этом окне. И наоборот, при использовании встроенного сервера разработки окно Modules отображает все библиотеки DLL и показывает, что были загружены символы для моих DLL. Что-то явно не так. Установка VS полностью костяная.

В IIS мой сайт настроен на ASP.NET 2.0 (потому что нет ни одного 3.5 для выбора из раскрывающегося списка), а также чтение/просмотр журналов/индексирование этих параметров ресурсов, отмеченных на вкладке "Домашний каталог".

Некоторые из моих неудачных идей:
1) Если я присоединяюсь к процессу на экземпляре iexplore.exe, где отображается веб-сайт, он загружает библиотеки Internet Explorer, но не мои.
2) Я перезагрузил компьютер несколько раз
3) Я вызвал devenv.exe/resetuserdata раз и навсегда 4) Я подтвердил, что каждый проект действительно настроен на отладку, а не выпуск.
5) Удалено все содержимое \bin и перестроено решение.
6) Удалено все решение и отталкивается от Source Control.

Может кто-нибудь сказать мне, что не так с этим? У меня будет аневризма от головной боли, которая вызывает у меня.

Ответ 1

Вам нужно прикрепить его к рабочему процессу IIS, какую ОС вы используете? Убедитесь, что вы прикрепляетесь с помощью флагов Managed + Native в приложении Attach to Process. Что произойдет, если вы просто запустите (F5) свое веб-приложение внутри Visual Studio (которое автоматически присоединяет отладчик)? Вы получаете какие-либо ошибки?

Ответ 2

Ну, здесь есть немало хороших ответов, но я обнаружил, что основной причиной проблемы для меня была конфигурация проверки пула приложений. Позвольте мне изложить сценарий, который я испытал, и решение, и, возможно, это поможет кому-то сэкономить время... и волосы.

Сценарий:
Я хочу отлаживать веб-приложение ASP.NET в Visual Studio 2010, но не могу использовать встроенный веб-сервер Visual Studio. Причина, по которой я не мог использовать встроенный веб-сервер, заключается в том, что мое приложение ссылалось на сборки, созданные специально для 64-битной архитектуры, и веб-сервер VS не поддерживал их. Таким образом, мне пришлось использовать опцию "Использовать настраиваемый веб-сервер" в свойствах веб-сайта, чтобы указать отладчик на опубликованный экземпляр моего сайта на удаленном веб-сервере IIS.

Проблема:
Даже если параметры debug web.config правильно заданы для публикации символов отладки в выходных данных сборки (например, для компиляции debug = "true" ), отладчик не будет присоединяться к удаленному процессу IIS, и я не ударил точки останова

Среда:
Отладчик Visual Studio 2010 уже был установлен на удаленном веб-сервере IIS и выполнялся как служба Windows в учетной записи LocalSystem.

Решение:
Включите "Анонимную аутентификацию" в дополнение к "Аутентификация Windows" на веб-сайте, размещенном на веб-сервере IIS.

Как только я включил анонимную аутентификацию, правильные символы были загружены удаленным отладчиком VS, и я смог попасть в точки останова.

Надеюсь, это поможет вам, ребята.

Ответ 3

Вы пытались удалить кеш браузера? Иногда браузер зависает с старым кодом, который несовместим с текущей сборкой и тем самым предотвращает отладку.

Ответ 4

У меня была проблема до того, где, когда на экране конфигурации сборки некоторые проекты не готовы к определенной конфигурации решения, они не будут строить и, следовательно, не будут отлаживаться. Можете ли вы подтвердить, действительно ли были созданы и выполнены изменения кода, которые вы делаете?

Кроме того, какая версия Windows и IIS вы используете? Возможно ли, что ваш процесс запущен под AppPool с учетной записью, отличной от учетной записи, с которой вы вошли в систему, и, возможно, это проблема с разрешениями? Если Vista/Win7, включен UAC, и вы используете VS как администратор? Я также добавлю предложение попробовать новый проект и посмотреть, что он делает. Вы находитесь в локальной группе пользователей отладчика на машине?

Ответ 5

Запускает ли приложение приложение без прикрепленного отладчика? Пахнет тем, что вы прикрепляете отладчик к неправильному процессу.