共用方式為


啟用智慧型手機用戶端

啟動 DbgSrv 行程伺服器之後,您就可以在另一部電腦上建立智慧型手機用戶端,並開始偵錯會話。

有兩種方式可以啟動智慧型手機用戶端:使用 -premote 命令行選項啟動CDB或 WinDbg,或使用 WinDbg 圖形化介面。

重要

使用遠端偵錯時,有重要的安全性考慮。 如需詳細資訊,包括啟用安全模式的資訊,請參閱在遠端偵錯期間 安全性,以及 Windows 偵錯工具 安全性考慮

智慧型手機的通訊協議必須符合進程伺服器的通訊協定。 啟動智慧型手機用戶端的一般語法取決於所使用的通訊協定。 下列選項存在:

建議的連線方法,以及一些額外的安全性

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

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

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

Debugger -premote com:port=COMPort,baud=BaudRate,channel=COMChannel[,password=Password] [Options]

不安全的連線方法

Debugger -premote npipe:server=Server,pipe=PipeName[,password=Password] [Options]

Debugger -premote tcp:server=Server,port=Socket[,password=Password][,ipversion=6] [Options]

Debugger -premote tcp:clicon=Server,port=Socket[,password=Password][,ipversion=6] [Options]

若要使用圖形化介面來連線到進程伺服器,WinDbg 必須處於休眠模式,它必須以沒有命令行參數啟動,或者必須已結束先前的偵錯會話。 選取 檔案 |聯機到遠端 Stub 功能表命令。 當 [連線到遠端 Stub Server] 對話框出現時,請在 [連接字串] 文本框中輸入下列其中一個字符串:

建議的連線方法,以及一些額外的安全性

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] 

或者,您可以使用 [瀏覽] 按鈕來尋找作用中的進程伺服器。

參數

上述命令中的參數具有下列可能的值:

調試程式
這可以是CDB或 WinDbg。

Server
這是進程伺服器建立所在的計算機網路名稱或IP位址。 兩個初始反斜杠 (\) 在命令行上是選擇性的,但在 [WinDbg] 對話框中是不允許的。

pipe=PipeName
如果使用 NPIPE 或 SPIPE 通訊協定,PipeName 是建立行程伺服器時提供給管道的名稱。

如果您未使用可存取伺服器電腦的帳戶登入用戶端電腦,您必須提供使用者名稱和密碼。 在用戶端電腦的 [命令提示字元] 視窗中,輸入下列命令。

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

其中 Server 是伺服器電腦的名稱,而 UserName 是可存取伺服器電腦的帳戶名稱。

出現提示時,請輸入 UserName的密碼。

此命令成功之後,您可以使用 -premote 命令行選項或使用 WinDbg 圖形化介面來啟用智慧型手機用戶端。

注意 您可能需要在伺服器電腦上啟用檔案和印表機共用。 在 [控制面板] 中,流覽至 [網络和因特網 > 網络和共用中心],> [進階共用設定]。 選取 [開啟檔案和印表機共用

port=Socket
如果使用 TCP 或 SSL 通訊協定,套接字 是建立進程伺服器時所使用的相同套接字埠號碼。

clicon
指定行程伺服器會嘗試透過反向連線到智慧型手機連接到智慧型手機。 只有在伺服器使用 clicon時,用戶端才能使用 clicon 。 在大部分情況下,當使用反向連線時,智慧型手機會在進程伺服器之前啟動。

port=COMPort
如果使用 COM 通訊協定,COMPort 指定要使用的 COM 連接埠。 前置詞 “COM” 是選擇性的 -- 例如,可以接受 “com2” 和 “2”。

baud=BaudRate
如果使用 COM 通訊協定,BaudRate 應該符合建立進程伺服器時所選擇的包速率。

信道=COMChannel
如果使用 COM 通訊協定,COMChannel 應該符合建立進程伺服器時所選擇的通道號碼。

proto=通訊協定
如果使用 SSL 或 SPIPE 通訊協定,通訊協定 應該符合建立進程伺服器時所使用的安全通訊協定。

憑證
如果使用 SSL 或 SPIPE 通訊協定,您應該使用相同的 certuser=Certmachuser=Cert 建立行程伺服器時所使用的參數。

password=Password
如果在建立進程伺服器時使用密碼,則必須提供 密碼,才能建立智慧型手機用戶端。 它必須符合原始密碼。 密碼會區分大小寫。 如果提供錯誤的密碼,錯誤訊息會指定「錯誤0x80004005」。

ipversion=6
(僅限適用於 Windows 6.6.07 和更早版本的偵錯工具)使用 TCP 連線到因特網時,強制調試程式使用 IP 第 6 版,而不是第 4 版。 在 Windows Vista 和更新版本中,調試程式會嘗試自動預設為 IP 版本 6,因此不需要此選項。

選項
您可以在這裡放置任何其他命令行參數。 如需完整清單,請參閱 Command-Line 選項。 如果您使用CDB,這必須指定您想要偵錯的進程。 如果您使用 WinDbg,您可以在命令行或透過圖形化介面指定進程。

由於行程伺服器只是做為智慧型手機用戶端的閘道,因此當您在與目標應用程式相同的電腦上啟動使用者模式調試程式時,其他 選項 會與您所使用的選項相同。

如果您使用 -premote 選項搭配 .attach (附加至進程).create (Create Process),則參數與上述參數相同。

故障排除

如果您看到此訊息:用戶端未使用與伺服器相同的遠端通訊協定版本 這表示您嘗試連線的 DbgSrv 版本使用與 WinDbg 版本不同的通訊協定版本。

通訊協議變更並不常見。 當發生這種情況時,請務必使用最新可用 DbgSrv 和 WinDbg (傳統) 或 WinDbg 的相符版本。 如需下載最新版本的資訊,請參閱 Windows 偵錯工具