Удаленная отладка с помощью WinDbg
Удаленная отладка включает два отладчика, работающих в двух разных расположениях. Отладчик, выполняющий отладку, называется сервером отладки. Второй отладчик, называемый клиентом отладки, управляет сеансом отладки из удаленного расположения. Чтобы установить удаленный сеанс, сначала необходимо настроить сервер отладки, а затем активировать клиент отладки.
Отлаживаемый код может выполняться на том же компьютере, на котором выполняется сервер отладки, или на отдельном компьютере. Если сервер отладки выполняет отладку в пользовательском режиме, отлаживаемый процесс может выполняться на том же компьютере, что и сервер отладки. Если сервер отладки выполняет отладку в режиме ядра, то отлаживаемый код обычно выполняется на отдельном целевом компьютере.
На следующей схеме показан удаленный сеанс, в котором сервер отладки, работающий на хост-компьютере, выполняет отладку в режиме ядра кода, выполняемого на отдельном целевом компьютере.
Существует несколько транспортных протоколов, которые можно использовать для подключения удаленной отладки: TCP, NPIPE, SPIPE, SSL и COM-порт. Предположим, что в качестве протокола выбран протокол TCP, а winDbg используется как клиент отладки, так и сервер отладки. Для создания удаленного сеанса отладки в режиме ядра можно использовать следующую процедуру:
На хост-компьютере откройте WinDbg и установите сеанс отладки в режиме ядра с целевым компьютером. (См . раздел Отладка live Kernel-Mode с помощью WinDbg (классическая модель)).)
Чтобы прервать вход, выберите Команду Разорвать в меню Отладка или нажав клавиши CTRL+Break.
В окне команд отладчика введите следующую команду.
.server tcp:port=5005
Примечание Номер порта 5005 является произвольным. Номер порта — это ваш выбор.
WinDbg ответит выходными данными, аналогичными приведенным ниже.
Server started. Client can connect with any of these command lines 0: <debugger> -remote tcp:Port=5005,Server=YourHostComputer
На удаленном компьютере откройте WinDbg и в меню Файл выберите Подключиться к удаленному сеансу.
В разделе Строка подключения введите следующую строку.
tcp:Port=5005,Server=YourHostComputer
Где YourHostComputer — это имя главного компьютера, на котором выполняется сервер отладки.
Щелкните ОК.
Использование командной строки
В качестве альтернативы процедуре, приведенной в предыдущем разделе, можно настроить сеанс удаленной отладки в командной строке. Предположим, что вы настроены для установки сеанса отладки в режиме ядра между главным и целевым компьютерами по кабелю 1394 на канале 32. Для создания сеанса удаленной отладки можно использовать следующую процедуру:
На хост-компьютере введите следующую команду в окне командной строки.
windbg -server tcp:port=5005 -k 1394:channel=32
На удаленном компьютере введите следующую команду в окне командной строки.
windbg -remote tcp:Port=5005,Server=YourHostComputer
Где YourHostComputer — это имя главного компьютера, на котором выполняется сервер отладки.
Дополнительные сведения
Существует множество способов удаленной отладки, отличных от тех, которые описаны в этом разделе. Полные сведения о настройке сервера отладки в командном окне отладчика WinDbg см. в разделе .server (Создание сервера отладки). Полные сведения о запуске WinDbg (и установке удаленной отладки) в командной строке см. в разделе Параметры Command-Line WinDbg.
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по