開啟智慧型用戶端 (核心模式)
啟動 KD 連線伺服器之後,您就可以在另一部電腦上建立智慧型手機用戶端,並開始偵錯會話。
有兩種方式可以啟動智慧型手機用戶端:使用核心通訊協定 kdsrv 啟動 KD 或 WinDbg,或使用 WinDbg 圖形化介面。
您必須指定 KD 連線伺服器所使用的遠端傳輸通訊協定。 您也可以指定 KD 連接伺服器與目標電腦之間實際核心連線的通訊協定,也可以使用預設值。
啟動智慧型手機用戶端的一般語法取決於所使用的通訊協定。 有下列選項:
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]
Debugger -k kdsrv:server=@{com:port=COMPort,baud=BaudRate,channel=COMChannel[,password=Password]},trans=@{ConnectType} [Options]
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]
若要使用圖形化介面來連線到 KD 連線伺服器,WinDbg 必須處於休眠模式-- 它必須以沒有命令行參數啟動,或者必須已經結束先前的偵錯會話。 選取檔案 |線上到遠端 Stub 選單命令。 當 [連線到遠端記憶體根伺服器] 對話框出現時,在 [連接字串] 文字框中輸入下列其中一個字串:
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]
com:port=COMPort,baud=BaudRate,channel=COMChannel[,password=Password]
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]
或者,您可以使用 [瀏覽] 按鈕來尋找作用中的 KD 連線伺服器。
上述命令中的參數具有下列可能的值:
調試器
這可以是 KD 或 WinDbg。
Server
這是建立 KD 連線伺服器之電腦的網路名稱或 IP 位址。兩個初始反斜杠 (\) 在命令行上是選擇性的,但在 [WinDbg] 對話框中是不允許的。
pipe= PipeName
如果使用 NPIPE 或 SPIPE 通訊協定, PipeName 是建立 KD 連接伺服器時提供給管道的名稱。
如果您未使用可存取伺服器電腦的帳戶登入用戶端電腦,您必須提供使用者名稱和密碼。 在用戶端電腦的 [命令提示字元] 視窗中,輸入下列命令。
net use \\Server\ipc$ /user:UserName
其中 Server 是伺服器電腦的名稱,而 UserName 是有權存取伺服器電腦的帳戶名稱。
出現提示時,請輸入UserName的密碼。
此命令成功之後,您可以使用 -k kdsrv 或使用 WinDbg 圖形化介面來啟用智慧型手機用戶端。
port= 插座
如果使用 TCP 或 SSL 通訊協定, 套接字 是建立 KD 連線伺服器時所使用的相同套接字埠號碼。
clicon
指定 KD 連線伺服器會嘗試透過反向連線到智慧型手機連接到智慧型手機用戶端。 只有在伺服器使用 clicon 時,用戶端才能使用 clicon。 在大部分情況下,使用反向連線時,智慧型手機在 KD 連線伺服器之前啟動。
port= COMPort
如果使用 COM 通訊協定, COMPort 會指定要使用的 COM 埠。 前置詞 “COM” 是選擇性的 -- 例如,可以接受 “com2” 和 “2”。
baud= BaudRate
如果使用 COM 通訊協定, BaudRate 應該符合建立 KD 連接伺服器時所選擇的包速率。
channel= COMChannel
如果使用 COM 通訊協定, COMChannel 應該符合建立 KD 連線伺服器時所選擇的通道號碼。
proto= 協定
如果使用 SSL 或 SPIPE 通訊協定, Protocol 應該符合建立 KD 連線伺服器時所使用的安全通訊協定。
證書
如果使用 SSL 或 SPIPE 通訊協定,您應該使用建立 KD 連線伺服器時所使用的相同 certuser=Cert 或 machuser=Cert 參數。
password= 密碼
如果在建立 KD 連接伺服器時使用密碼, 則必須提供密碼 ,才能建立智慧型手機用戶端。 它必須符合原始密碼。 密碼會區分大小寫。 如果提供錯誤的密碼,錯誤訊息會指定「錯誤0x80004005」。
ipversion=6
(僅限適用於 Windows 6.6.07 和更早版本的偵錯工具)使用 TCP 連線到因特網時,強制調試程式使用 IP 第 6 版,而不是第 4 版。 在 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 執行所在計算機上的環境變數所指定的值。
選項
您可以在這裡放置任何其他命令行參數。 如需完整清單,請參閱 命令行選項 。
由於 KD 連線伺服器只是做為智慧型手機客戶端的閘道,因此如果您在 KdSrv 執行所在的電腦上啟動核心調試程式,其他 選項 會與您所使用的選項相同。 這個例外狀況是指定路徑或檔名的任何選項,都會作為智慧型手機客戶端執行所在電腦上的路徑。