Как установить точку останова при отладке скомпилированного исполняемого файла, когда источник находится на исходном сервере - PullRequest
0 голосов
/ 16 января 2019

Добрый день,

Мой вопрос:

Как установить точку останова при отладке двоичного исполняемого файла в Visual Studio 2017где у меня нет источников на моей локальной машине?

Настройка:

  • Win 10 ПК с установленной Visual Studio 2017
  • git в качестве исходного хранилища в локальной сети
  • TeamCity в качестве Build Server также в той же локальной сети
  • TemaCity настроен как сервер символов и исходного кода в Visual Studio

Процесс:

  1. Код записывается на локальном компьютере и фиксируется в репозитории git
  2. TeamCity Создает новые двоичные файлы из-за фиксации
  3. TemaCity также индексирует символы и исходные файлы

Проблема:

Теперь я хочу отладить конкретную двоичную сборку, чтобы увидеть, что пошло не так.Я загружаю двоичный файл в Visual Studio и запускаю его в режиме отладки, и когда возникает исключение unhandelt и происходит сбой приложения, Visual Studio загружает файл символов и исходный файл из TeamCity и отображает правильное местоположение, где произошло исключение.
Так что это работает, как и ожидалось.

Но вернемся к вопросу ... Как установить точку останова, когда я хочу исследовать, что делает двоичный файл, если он не падает?

В приведенном выше примере Visual Studio загружает только один единственный исходный файл с исходного сервера (тот, в который было сгенерировано исключение).Есть ли способ просмотреть исходный код этой конкретной сборки в Visual Studio, чтобы установить точку останова?

1 Ответ

0 голосов
/ 16 января 2019

Вызовите отладчик из вашего кода с помощью:

Debugger.Launch();

Просто поместите это утверждение в положение, где вы хотите, чтобы ваш код сломался.

См. https://docs.microsoft.com/en-us/dotnet/api/system.diagnostics.debugger.launch?view=netframework-4.7.2

...