Поделиться через


Активация смарт-клиента (режим ядра)

После активации сервера подключения KD можно создать смарт-клиент на другом компьютере и начать сеанс отладки.

Существует два способа запуска смарт-клиента: запуск KD или WinDbg с помощью протокола ядра kdsrvили с помощью графического интерфейса WinDbg.

Необходимо указать протокол удаленной передачи, используемый сервером подключения KD. Кроме того, можно указать протокол для фактического подключения ядра между сервером подключения KD и целевым компьютером или использовать значение по умолчанию.

Важный

При использовании удаленной отладки необходимо учитывать важные аспекты безопасности. Дополнительные сведения о включении безопасного режима см. в разделе Безопасность во время удаленной отладки и вопросы безопасности для средств отладки Windows.

Общий синтаксис запуска смарт-клиента зависит от используемого протокола. Существуют следующие параметры:

Рекомендуемые методы подключения с некоторыми дополнительными безопасности

Debugger -k kdsrv:server=@{spipe:proto=Protocol,{certuser=Cert|machuser=Cert},server=Server,pipe=PipeName[,password=Password]},trans=@{ConnectType} [Options]

Debugger -k kdsrv:server=@{ssl:proto=Protocol,{certuser=Cert|machuser=Cert},server=Server,port=Socket[,password=Password]},trans=@{ConnectType} [Options]

Debugger -k kdsrv:server=@{ssl:proto=Protocol,{certuser=Cert|machuser=Cert},clicon=Server,port=Socket[,password=Password]},trans=@{ConnectType} [Options]

Debugger -k kdsrv:server=@{com:port=COMPort,baud=BaudRate,channel=COMChannel[,password=Password]},trans=@{ConnectType} [Options]

небезопасные методы подключения

Debugger -k kdsrv:server=@{npipe:server=Server,pipe=PipeName[,password=Password]},trans=@{ConnectType} [Options]

Debugger -k kdsrv:server=@{tcp:server=Server,port=Socket[,password=Password][,ipversion=6]},trans=@{ConnectType} [Options]

Debugger -k kdsrv:server=@{tcp:clicon=Server,port=Socket[,password=Password][,ipversion=6]},trans=@{ConnectType} [Options]

Чтобы использовать графический интерфейс для подключения к серверу подключения KD, WinDbg должен находиться в неактивном режиме. Он должен быть запущен без параметров командной строки или должен завершить предыдущий сеанс отладки. Выберите файл | Подключитесь к команде меню удаленной заглушки. Когда появится диалоговое окно "Подключение к удаленному серверу заглушки" , введите одну из следующих строк в текстовое поле строки подключения :

Рекомендуемые методы подключения с некоторыми дополнительными безопасности

spipe:proto=Protocol,{certuser=Cert|machuser=Cert},server=Server,pipe=PipeName[,password=Password] 

ssl:proto=Protocol,{certuser=Cert|machuser=Cert},server=Server,port=Socket[,password=Password] 

ssl:proto=Protocol,{certuser=Cert|machuser=Cert},clicon=Server,port=Socket[,password=Password] 

com:port=COMPort,baud=BaudRate,channel=COMChannel[,password=Password] 

небезопасные методы подключения

npipe:server=Server,pipe=PipeName[,password=Password] 

tcp:server=Server,port=Socket[,password=Password][,ipversion=6] 

tcp:clicon=Server,port=Socket[,password=Password][,ipversion=6] 

Кроме того, можно использовать кнопку Обзор, чтобы найти активные серверы подключения KD.

Параметры в предыдущих командах имеют следующие возможные значения:

отладчика
Это может быть KD или WinDbg.

сервера
Это сетевое имя или IP-адрес компьютера, на котором был создан сервер подключения KD. Две начальные обратные косые черты (\) являются необязательными в командной строке, но не разрешены в диалоговом окне WinDbg.

pipe=PipeName
Если используется протокол NPIPE или SPIPE, PipeName — это имя, которое было присвоено каналу при создании сервера подключения KD.

Если вы не вошли на клиентский компьютер с учетной записью с доступом к серверу, необходимо указать имя пользователя и пароль. На клиентском компьютере в окне командной строки введите следующую команду.

net use \\Server\ipc$ /user:UserName

где Server — имя компьютера сервера, а имя_пользователя — имя учетной записи с доступом к компьютеру сервера.

При появлении запроса введите пароль для UserName.

После успешного выполнения этой команды можно активировать смарт-клиент с помощью -kdsrv или с помощью графического интерфейса WinDbg.

port=Socket
Если используется протокол TCP или SSL, сокет совпадает с номером порта сокета, который использовался при создании сервера подключения KD.

clicon
Указывает, что сервер подключения KD попытается подключиться к смарт-клиенту через обратное подключение. Клиент должен использовать clicon, если сервер использует clicon. В большинстве случаев смарт-клиент запускается перед сервером подключения KD при использовании обратного подключения.

порт =COMPort
Если используется протокол COM, COMPort указывает используемый com-порт. Префикс COM является необязательным. Например, допустимы как com2, так и "2".

baud=BaudRate
Если используется протокол COM, BaudRate должны соответствовать скорости baud, выбранной при создании сервера подключения KD.

канал =COMChannel
Если используется протокол COM, COMChannel должны соответствовать номеру канала, выбранному при создании сервера подключения KD.

proto=Протокол
Если используется протокол SSL или SPIPE, протокол должен соответствовать безопасному протоколу, используемому при создании сервера подключения KD.

сертификат
Если используется протокол SSL или SPIPE, следует использовать идентичный параметр certuser=Cert или machuser=Cert, который использовался при создании сервера подключения KD.

password=Password
Если при создании сервера подключения KD использовался пароль, необходимо предоставить пароль, чтобы создать смарт-клиент. Он должен соответствовать исходному паролю. Пароли чувствительны к регистру. Если указан неправильный пароль, сообщение об ошибке будет указывать "Ошибка 0x80004005".

ipversion=6
(Только средства отладки для Windows 6.6.07 и более ранних версий) Принудительно отладчик использовать IP-адрес версии 6, а не версию 4 при использовании TCP для подключения к Интернету. В Windows Vista и более поздних версиях отладчик пытается автоматически использовать IP-версию 6, что делает этот параметр ненужным.

trans=@{ConnectType}
Сообщает отладчику, как подключиться к целевому объекту. Разрешены следующие протоколы подключения ядра:

com:port=ComPort,baud=BaudRate 
usb2:targetname=String 
com:pipe,port=\\VMHost\pipe\PipeName[,resets=0][,reconnect]
com:modem 

Сведения об этих протоколах см. в настройке для отладки. Вы можете опустить любой из параметров для этих протоколов, например, можно сказать, trans=@@{com:}- и отладчик по умолчанию будет использовать значения, указанные переменными среды на компьютере, где выполняется KdSrv.

параметры
Здесь можно разместить любые дополнительные параметры командной строки. Полный список см. в Command-Line параметрах.

Так как сервер подключения KD просто выступает в качестве шлюза для смарт-клиента, дополнительные параметры будут совпадать с теми, которые вы использовали бы, если вы запускаете отладчик ядра на компьютере, где работает KdSrv. Исключением из этого является любой параметр, указывающий путь или имя файла, будет использоваться в качестве пути на компьютере, где работает смарт-клиент.