Активация смарт-клиента (режим ядра)
После активации сервера подключения 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
Сведения об этих протоколах см. в
параметры
Здесь можно разместить любые дополнительные параметры командной строки. Полный список см. в Command-Line параметрах.
Так как сервер подключения KD просто выступает в качестве шлюза для смарт-клиента, дополнительные параметры будут совпадать с теми, которые вы использовали бы, если вы запускаете отладчик ядра на компьютере, где работает KdSrv. Исключением из этого является любой параметр, указывающий путь или имя файла, будет использоваться в качестве пути на компьютере, где работает смарт-клиент.