лучший метод запуска сеанса удаленной отладки в пользовательском режиме windbg - PullRequest
6 голосов
/ 10 сентября 2008

Какая ваша любимая техника для запуска сеанса удаленной отладки в пользовательском режиме windbg? Почему вы предпочитаете эту технику другим? (плюсы / минусы) * * тысяча один

Существует как минимум четыре различных способа выполнить удаленную отладку в пользовательском режиме с помощью windbg, как описано в разделе «Удаленная отладка» инструментов отладки для файла справки Windows.

  1. запустить приложение на цели, затем подключиться к нему с хоста windbg
  2. чтобы хост windbg использовал remote.exe для запуска приложения на цели
  3. пусть windbg хоста «умного клиента» запускает приложение на цели через сервер процессов, который работает на цели
  4. запустить экземпляр windbg на целевом компьютере, используя опцию «-server» для автоматического запуска сервера, затем подключиться к серверу со второго компьютера.

Ответы [ 3 ]

3 голосов
/ 10 сентября 2008

Вариант 1 мой любимый, потому что он самый простой. Я могу запустить приложение обычным способом, не беспокоясь о том, чтобы WinDbg установил правильный рабочий каталог, передал аргументы командной строки и т. Д.

К счастью, я не сталкивался ни с одним случаем, когда это не сработало!

2 голосов
/ 10 сентября 2008

Я склонен использовать опцию 4 (-server), потому что она единственная, которая не «всплывает», когда вы вламываетесь в отладчик ядра достаточно долго, чтобы время соединения TCP истекло. Но это более сложно и не вполне удовлетворительно. Поэтому я ищу "лучшие практики".

1 голос
/ 25 августа 2016

Не существует «лучшего» решения. У каждой из возможностей есть свои преимущества и недостатки, и хорошо понимать их все. Это зависит от нескольких факторов, таких как:

  • где расположены символы
  • какой ПК имеет доступ к Интернету для загрузки символов ОС
  • какой объем данных вы можете скопировать на сервер (клиенты часто принимают лучше, если это всего лишь один Exe)
  • какая пропускная способность между клиентом и сервером
  • нужны ли вам другие команды, например CDB / WinDbg, например доступ к CMD, тогда рассмотрите remote.exe
  • который доступен на стороне сервера, эксперт по отладке, которому вы легко можете рассказать множество загадочных команд, или обычный пользователь, который едва знает, как запустить командную строку
  • обе стороны в частной сети, поэтому вам нужен сервер «посредник», чтобы иметь возможность доступа друг к другу (или переадресация портов в качестве альтернативы, чего не хотят ИТ-специалисты, и может потребоваться несколько дней, чтобы настроить)

Из этих 4 вариантов не забывайте, что клиенты часто хотят видеть именно то, что вы делаете, поэтому им требуется сеанс RDP, Teamviewer или аналогичный. Это то, что они понимают.

...