Как отлаживать в VS вместо JIT Debugger? - PullRequest
3 голосов
/ 04 мая 2011

ОБНОВЛЕНИЕ: переход к процессу через меню: DEBUG / Attach Process / iexplore.exe показывает «Автоматически: код Silverlight».т.е. VS 2010 уже подключен к процессу.Почему он не переходит в режим отладки?

На моем ноутбуке происходит неприятное отладочное поведение, которое я хотел бы исправить.Я следовал вместе с демонстрацией под названием Silverlight TV 46: Что не так с моей службой WCF ?

На моем компьютере я заметил, что добавление throw new ArithmeticException() в службу RIA вызываетвовремя включенный отладчик (плохо - я хочу VS).Я могу поставить точку останова на линии throw new ArithmeticExpression(), и VS остановится, как обычно.Нажмите F10, и я по-прежнему получит включенный отладчик.

На компьютере Ивара (ведущий в разделе Ch 8 выше) включается отладчик Visual Studioточно в срок один.Что я делаю неправильно?Может быть, если ранее установлен Redgate Reflector, это вызвало (теперь оно исчезло).

ОШИБКА: Код отладчика Visual Studio Just-In-Time: 4004 Категория: ManagedRuntimeError Сообщение: System.Reflection.TargetInvocationException: Anво время операции возникла исключительная ситуация, делающая результат недействительным.

Проверка ...

Возможные отладчики:

New instance of MS VS 2010, 
New instance of VS 2008.  
  • [проверено] Установлено в настоящее времявыбранный отладчик по умолчанию.
  • [не проверено] Вручную выберите механизмы отладки

  • Действие: нажмите Да.

2-я ОШИБКА:

Невозможно подключиться к процессу сбоя.Отладчик уже подключен.

Я потратил несколько часов на поиски способа решения этой проблемы.

Браузер IE9 / Silverlight 4.

Ответы [ 2 ]

2 голосов
/ 25 июня 2011

Ранее я начал запускать приложение silverlight напрямую через среду VS2010 ... но затем решил сделать его более совместимым с развертыванием (снова).

http://msdn.microsoft.com/en-us/library/cc838267(VS.95).aspx

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

Затем я удалил zap файлы, переключил стартовую страницу с html на aspx.Подключил aspx к xap (он не указывал на папку / debug /).[примечание: похоже, что вы можете удалить отладку через Silverlight Project / build / Output path: замените Bin \ Debug \ на Bin.С Silverlight я чувствую , что относительный путь Uri должен совпадать с вашими файлами html / aspx, независимо от того, где вы находитесь: в Debug или Release.

свойства проекта / Web / Конкретная страница

Отладка снова работает!

.html прекратил отладку?Случайный осмотр показывает то же самое, что и в javascript, при запуске Silverlight.На поверхности это выглядит так же.хммм.Я думаю, что это не так.

... вот несколько дополнительных вещей, на которые следует обратить внимание тем, у кого все еще есть проблемы (я могу также перечислить их, пока они свежи в моей памяти).

  1. project / properties / Web / Debuggers: у меня теперь только Silverlight проверен.ASP.Net больше не проверяется.(Не уверен, что это повлияет на мои результаты на данном этапе)

  2. убедитесь, что ваш веб-проект указывает на проект silverlight в проекте / свойства / приложения Silverlight.Это гарантирует, что двоичный «xap» проекта silverlight будет скопирован в папку на веб-сайте / в веб-приложении.Примечание: нажатие кнопки добавления показывает папку назначения (должна быть ClientBin).

Ваша конфигурация сборки добавит дополнительный субфоллер, например, debug.
Убедитесь, что ваши файлы .aspx или .html имеют правильный путь.Для меня я просто включил папку .ClientBin / debug /.Я не думаю, что это удобно для развертывания, поэтому я буду искать лучший путь позже.

  1. Настройки IE9.

[X] Отключить отладку сценария.

[X] Отключить отладку сценария (Другое)

[] Отображение уведомления об ошибке сценария

[] Показать дружественное сообщение об ошибке HTTP

Опять же, не уверен, что эти более поздние настройки окажут влияние.

Наконец, иногда я кое-что забываю.Обязательно проверьте Отладка VS2010 / Исключения / Общий язык Runtime.Это повышает способность ловить исключения.

1 голос
/ 05 декабря 2012

У меня была похожая проблема, но вышеописанное не решило ее.Однако запуск приложения без отладки (Ctrl-F5) и запуск исключения позволили бы мне выбрать экземпляр Visual Studio, с которого я запустил приложение.Удивительно, но я получил разумную трассировку стека и решил проблему за несколько минут.

...