Resharper отладка декомпилированной dll третьей стороны
Есть ли способ отладки в декомпилированной dll с помощью Resharper, и если да, то как вы это делаете?
Например, я пытаюсь отлаживать System.Web.Http.ApiController
, где я декомпилировал и могу видеть исходный код.
Я установил точку останова, но когда я запускаю приложение, он не разбивается на декомпилированную точку останова при отладке.
Ответы
Ответ 1
Насколько я знаю, невозможно отладить декомпилированный исходный код .net с помощью Resharper (до версии v6.1)
Однако в этой статье объясняется, как вы можете отлаживать источник .net с Visual Studio 2010 - если вам нужны инструкции для другой версии VS, просто используйте ссылку "Другие версии" в верхней части страницы.
Ответ 2
Да, вы можете с Resharper 9.0
(не уверен для предыдущих версий).
Зайдите в меню "Resharper"> "Windows"> "Обозреватель сборок"
- Добавьте сборку там с первой кнопкой слева (с + на ней)
- Затем щелкните правой кнопкой мыши по нему и выберите "Generate Pdb..." (подождите, пока это не будет сделано)
- Теперь вы можете взломать код.
Обратите внимание, однако, как сказал Дженс, это, вероятно, нарушит условия лицензии
Ответ 3
Средства для отладки представлены в dotPeek 1.2, и вот хорошая статья, описывающая, как настроить сервер символов и dotPeek 1.2 для отладки декомпилированного кода из VisualStudio: http://blog.jetbrains.com/dotnet/2014/04/09/introducing-dotpeek-1-2-early-access-program.
Ответ 4
Нет, это невозможно с помощью только Visual Studio и ReSharper, но есть еще один продукт, который может вам помочь, Отражатель .NET.
В редакции VSPro есть "Отладочные сборки, использующие отладчик Visual Studio, даже если у вас нет функции источника", которая позволяет вам создавать .pdb файлы и декомпилированный исходный код для уже построенных сборок .NET.
Из опыта у него были некоторые проблемы с некоторыми сборками, но я не могу вспомнить, почему это было, так что это может или не поможет вам.
С помощью ReSharper вы можете посмотреть на декомпилированный исходный код из сборок, почти так же, как Reflector создаст декомпилированный источник, но вы не сможете отлаживать код с этими исходными файлами с помощью ReSharper.
Ответ 5
Выберите сборку в окне "Проводник сборки" и нажмите "Экспорт в проект" на панели инструментов или выберите "Экспорт в проект" в контекстном меню.
Подробнее здесь
Кроме того, проверьте эту конфигурацию на главной странице параметров отладки (Инструменты → Параметры → Отладка → Общие):
Снимите флажок "Включить только мой код"
Снимите флажок "Включить исходный шаг .NET Framework"
Установите флажок "Включить поддержку сервера"
Снимите флажок "Требовать, чтобы исходные файлы соответствовали исходной версии
Ответ 6
[Полное раскрытие информации - я сотрудник Telerik]
С последней версией Telerik JustCode вы можете отлаживать декомпилированный код, не покидая Visual Studio. Для получения дополнительной информации вы можете прочитать мое сообщение в блоге, объявив об этом здесь.
Ответ 7
Вам нужно будет иметь соответствующие файлы *.pdb
для ввода кода.
В противном случае это может помочь декомпилировать двоичный файл, например. Telerik свободно доступен JustDecompile.
Но вы должны знать, что это может нарушать лицензионные соглашения стороннего провайдера.