Не удается войти в исходный код .NET с помощью VS2008 SP1
Как-то мой VS2008 SP1 потерял способность входить в исходные среды .NET. Я играл с флажками до конца; Я повторно удалил папку с символьным кешем дюжину раз; и я пробовал все виды серверов символов отладки.
Все, что он делает, загружает некоторые .PDB файлы, но когда я пытаюсь выбрать фрейм стека в .NET, я всегда получаю сообщение об отсутствии источника и "вы хотите просмотреть разборку".
Что дает?
Добавлено: веб-приложение; Windows Vista Business x32;.NET 3.5 SP1.
Ответы
Ответ 1
Я считаю, что ваша проблема - это несогласованная версия .Net, работающая в вашей системе, по сравнению с версией изображения в pdb, загружаемой с сервера символов. У меня была та же проблема на 64-битной Vista и Win7. Мне еще предстоит найти ссылку на то, как получить сборку в версии 2.0.5.xxxx, как указано в инструкциях. SP1 со всеми пакетами обновлений на двух ОС, которые я инсайтировал, показывают сборки в 2.0.0.xxxx
EDIT: начните отладку любого приложения, которое у вас есть, и нажмите CTRL + ALT + U, чтобы получить список модулей. Он показывает, какая сборка в GAC используется для приложения
Я написал, что я считаю лучшим описанием проблемы.
Блог проблемы
Ответ 2
Когда вы входите в режим отладки, откройте окно "Модули", щелкните правой кнопкой мыши на компоненте фреймворка и выберите загрузку источника с серверов Microsoft.
Ответ 3
У меня возникла проблема, из-за которой я не могу войти в исходный код Framework.
Затем я перешел к настройкам проекта и установил Target Platform на "Any CPU", а затем произошло волшебство, по умолчанию Target Platform - "x86".
Моя платформа Win7 x64, VS2010
Ответ 4
Я сталкивался с этим несколько раз в 2005 году. Большая часть этого вуду и, вероятно, не имеет значения, но где-то здесь есть ответ (который работает для меня):
- Убейте службу
- Удалить любые локальные .pdbs
- Избавьтесь от временных файлов в (например) C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Временные файлы ASP.NET(либо только связанные с проектом файлы, либо все)
- Служба перезагрузки
- Если это не сработало, повторите 1-4, перезагрузитесь, а затем попробуйте
Ответ 5
Я заметил, что если эта проблема возникает при запуске веб-сайта, включение HTTP-хранителей в IIS может устранить ее.
Ответ 6
Попробуйте эту инструкцию, я все хорошо работает!
Ответ 7
Я столкнулся с той же проблемой на разных машинах.
Я получаю это прямо сейчас на Win7 x86 с .NET v2.0.50727 CLR (3.5sp1).
Наиболее квотированный post не помогает.
Обратите внимание, что "Microsoft Symbol Server" не является исходным сервером с источниками .NET. Он размещает PDB без исходной информации (без индексирования). Для источников .NET нам нужны индексированные PDB с http://referencesource.microsoft.com/symbols" и включить поддержку исходного сервера.
Но иногда он перестает работать.
Я предполагаю, что проблема с невозможностью загрузки индексированных PDB.net(как упоминалось ранее) связана с конфликтами версий.
Я могу сказать только это:
WinServer 2008 R2 3.5.30729.4926 - работает
Win7 x86 3.5.30729.4918 - doens't work
Что я подразумеваю под "не работает": попробуйте "загрузить из пути к символам" (из окна "Модуль" или "Стек", не имеет значения) и получите диалог для выбора .pdb(помещенный, например, в C:\Windows\сборка\GAC_32\mscorlib\2.0.0.0__b77a5c561934e089\mscorlib.pdb). Это VS не может загрузить pdb для dll. Абсолютно те же действия на WinSrv2008r2 делают VS download pdb и (если поддержка источника сервера включена).