共用方式為


在 Visual Studio 中遠端偵錯C++專案

若要對不同電腦上的 Visual Studio 應用程式進行偵錯,請在您將部署應用程式的電腦上安裝並執行遠端工具、設定專案以從 Visual Studio 連線到遠端電腦,然後部署並執行您的應用程式。

遠端調試程式元件

如需遠端偵錯通用 Windows 應用程式 (UWP) 的相關信息,請參閱 偵錯已安裝的應用程式套件

要求

從 Windows Server 2008 Service Pack 2 開始,Windows 7 和更新版本 Windows Server 支援遠端調試程式。 如需完整的需求清單,請參閱 需求

注意

不支援透過 Proxy 連線的兩部電腦之間進行偵錯。 不建議在高延遲或低頻寬的連線上進行偵錯,例如使用撥號網際網路,或在跨國家/地區透過網際網路進行偵錯,因為這樣可能會導致失敗或速度慢到無法接受的程度。

下載並安裝遠端工具

在您要偵錯的遠端裝置或伺服器上,而不是 Visual Studio 機器,從下表中的鏈接下載並安裝正確的遠端工具版本。

  • 下載 Visual Studio 版本的最新遠端工具。 最新的遠端工具版本與舊版 Visual Studio 相容,但舊版遠端工具版本與較新的 Visual Studio 版本不相容。 (例如,如果您使用 Visual Studio 2019,請下載 Visual Studio 2019 遠端工具的最新更新。在此案例中,請勿下載 Visual Studio 2022 的遠端工具。
  • 下載遠端工具,其架構與您安裝所在的計算機相同。 例如,如果您想要在執行64位作業系統的遠端電腦上偵錯32位應用程式,請安裝64位遠端工具。
  • 如果您是在 ARM64 裝置上遠端偵錯ARM64EC應用程式,請安裝 ARM64 遠端工具,然後啟動隨這些工具一起安裝的 x64 遠端調試程式。 您可以在下列位置找到:Program Files (x86)\Microsoft Visual Studio<版本>\Common7\IDE\Remote Debugger\x64
版本 連結 筆記
Visual Studio 2022 遠端工具 與所有 Visual Studio 2022 版本相容。 下載符合您裝置操作系統的版本(x86、x64(AMD64)或ARM64)。 在舊版 Windows Server 上,請參閱 解除封鎖檔案下載,以取得下載遠端工具的說明。
Visual Studio 2019 遠端工具 Visual Studio 2019 的遠端工具可從 My.VisualStudio.com 取得。 如果出現提示,請加入免費的 Visual Studio Dev Essentials 方案,或使用您的 Visual Studio 訂用帳戶標識符登入。 下載符合您裝置操作系統的版本(x86、x64(AMD64)或ARM64)。 在舊版 Windows Server 上,請參閱 解除封鎖檔案下載,以取得下載遠端工具的說明。
Visual Studio 2017 遠端工具 Visual Studio 2017 的遠端工具可從 My.VisualStudio.com 取得。 如果出現提示,請加入免費的 Visual Studio Dev Essentials 方案,或使用您的 Visual Studio 訂用帳戶標識符登入。 下載符合您裝置操作系統的版本(x86、x64(AMD64)或ARM64)。 在 Windows Server 上,請參閱 解除封鎖檔案下載,以取得下載遠端工具的協助。
Visual Studio 2015 遠端工具 Visual Studio 2015 遠端工具可從 My.VisualStudio.com 取得。 如果出現提示,請加入免費的 Visual Studio Dev Essentials 方案,或使用您的 Visual Studio 訂用帳戶標識符登入。 在 Windows Server 上,請參閱 解除封鎖檔案下載,以取得下載遠端工具的協助。
Visual Studio 2013 遠端工具 Visual Studio 2013 檔中的下載頁面
Visual Studio 2012 遠端工具 Visual Studio 2012 檔中的下載頁面
版本 連結 筆記
Visual Studio 2019 遠端工具 與所有 Visual Studio 2019 版本相容。 下載符合您裝置操作系統的版本(x86、x64(AMD64)或ARM64)。 在 Windows Server 上,請參閱 解除封鎖檔案下載,以取得下載遠端工具的協助。 如需最新版本的遠端工具,請開啟 Visual Studio 2022 檔
Visual Studio 2017 遠端工具 與所有 Visual Studio 2017 版本相容。 下載符合您裝置操作系統的版本(x86、x64(AMD64)或ARM64)。 在 Windows Server 上,請參閱 解除封鎖檔案下載,以取得下載遠端工具的協助。
Visual Studio 2015 遠端工具 Visual Studio 2015 遠端工具可從 My.VisualStudio.com 取得。 如果出現提示,請加入免費的 Visual Studio Dev Essentials 方案,或使用您的 Visual Studio 訂用帳戶標識符登入。 在 Windows Server 上,請參閱 解除封鎖檔案下載,以取得下載遠端工具的協助。
Visual Studio 2013 遠端工具 Visual Studio 2013 檔中的下載頁面
Visual Studio 2012 遠端工具 Visual Studio 2012 檔中的下載頁面

您可以將 msvsmon.exe 複製到遠端電腦,而不是安裝遠端工具,以執行遠端調試程式。 不過,只有在安裝遠端工具時,才能使用遠端調試程式設定精靈(rdbgwiz.exe)。 如果您想要以服務的形式執行遠端調試程式,您可能需要使用精靈進行設定。 如需詳細資訊,請參閱 (選擇性) 將遠端除錯程式設定為服務

注意

  • 若要對 ARM 裝置上的 Windows 10 或更新版本應用程式進行偵錯,請使用 ARM64,其適用於最新版本的遠端工具。
  • 若要對 Windows RT 裝置上的 Windows 10 應用程式進行偵錯,請使用 ARM,其僅適用於 Visual Studio 2015 遠端工具下載。

提示

在某些情況下,從檔案共用執行遠端調試程式最有效率。 如需詳細資訊,請參閱 從檔案共用執行遠端除錯程式

設定遠端調試程式

  1. 在遠端電腦上,從 [開始] 功能表尋找並啟動 遠端調試程式

    如果您沒有遠端電腦上的系統管理許可權,請滑鼠右鍵按住 遠端除錯程式 應用程式,然後選取[以系統管理員身分執行]。 否則,只要正常啟動即可。

    如果您打算附加至以系統管理員身分運行的進程,或是在不同使用者帳戶(如 IIS)下運行,請在 遠端調試程式 應用程式上按滑鼠右鍵,然後選擇 [以系統管理員身分執行]。 如需詳細資訊,請參閱 以系統管理員身分執行遠端調試程式

  2. 第一次啟動遠程調試程式(或設定之前),遠端偵錯組態 精靈隨即出現。

    在大部分情況下,請選擇 [下一步],直到您進入精靈的 [設定 Windows 防火牆] 頁面 為止。

    遠端調試程式設定的螢幕快照。

    遠端調試程式設定的螢幕快照。

    如果未安裝 Windows Web 服務之 API,這只有在 Windows Server 2008 R2 上會發生,請選取 [安裝] 按鈕。

  3. 選取至少一個您想要使用遠端工具的網路類型。 如果電腦是透過網域連線,您必須選擇第一個選項。 如果計算機是透過工作組或家庭群組連線,請視需要選擇第二或第三個專案。

    接下來,選取 完成 以啟動遠端偵錯工具。

    接下來,選取 [設定遠端偵錯 以啟動遠端調試程式。

  4. 設定完成時,[遠端調試程式] 視窗隨即出現。

    遠端調試程式視窗的螢幕快照,

    遠端調試程式視窗的螢幕快照,

    遠端調試程式現在正在等候連線。 使用顯示的伺服器名稱和埠號碼,在 Visual Studio 中設定遠端聯機組態。

若要停止遠端除錯程式,請選擇 [[檔案]>[結束]。 您可以從 [開始] 選單,或從命令行將它重新啟動:

<Remote debugger installation directory>\msvsmon.exe

注意

如果您需要為其他使用者新增許可權、變更驗證模式或遠端調試程式的埠號碼,請參閱 設定遠端調試程式

遠端偵錯C++專案

在下列程式中,專案的路徑為 C:\remotetemp,而遠端電腦的名稱 MySurface

  1. 建立名為 CppConsoleApp 的C++控制台應用程式

  2. 在應用程式中一個容易到達的位置設置斷點,例如在 CppConsoleApp.cpp中的 main 函式內。

  3. 在 [方案總管] 中,以滑鼠右鍵按一下專案,選擇 [屬性]。 開啟 [除錯] 標籤。

  4. 除錯程式設定為啟動,以 遠端 Windows 調試程式

    Visual Studio [方案總管屬性] 中 [偵錯中] 索引標籤的螢幕快照。[要啟動的調試程式] 屬性設定為 [遠端 Windows 調試程式]。

  5. 對屬性進行下列變更:

    設定 價值
    遠端命令 C:\remotetemp\CppConsoleApp.exe
    工作目錄 C:\remotetemp
    遠端伺服器名稱 MySurface:端口號
    連接 使用 Windows 驗證的遠端連線
    除錯類型 僅限本地
    部署目錄 C:\remotetemp
    要部署的其他檔案 $(ProjectDir)\data

    如果您部署其他資料夾,而且想要將資料夾中的所有檔案部署至相同的資料夾,請指定資料夾名稱。

    如需屬性的詳細資訊,請參閱 C++ 偵錯組態項目設定。

  6. 在 [方案總管] 中,以滑鼠右鍵按兩下方案,然後選擇 Configuration Manager

  7. 針對 偵錯 組態,選取 [部署] 複選框。

    Visual Studio 方案總管中 Configuration Manager 的螢幕擷圖。已選取[偵錯組態],並勾選[部署]。

  8. 開始偵錯 (偵錯 > 開始偵錯F5)。

  9. 可執行檔會自動部署到遠端電腦。

  10. 如果出現提示,請輸入網路認證以連線到遠端電腦。

    所需的認證是網路安全性設定特有的。 例如,在網域電腦上,您可能會選擇安全性憑證,或輸入您的網域名稱和密碼。 在非網域計算機上,您可以輸入計算機名稱和有效的用戶帳戶名稱,例如 MySurface\name@something.com,以及正確的密碼。

  11. 在 Visual Studio 計算機上,您應該會在斷點看到執行已停止。

    提示

    或者,您可以將檔案部署為個別步驟。 在 [方案總管] 中, 以滑鼠右鍵點擊該節點,然後選擇 部署

    如果您有應用程式所需的非程式代碼檔案,您可以在 [其他檔案] 的分號分隔清單中指定它們,[要部署 的其他檔案] 的 [調試程式] 屬性 頁面上,並選取 [遠端 Windows 調試程式]。

    或者,您可以將檔案包含在專案中,並將 Content 屬性設定為 [是] 在每個檔案的 [屬性] 頁面中。 這些檔案會複製到 調試程式 屬性頁面上指定的 部署目錄,並選取 遠端 Windows 調試程式。 如果您需要將檔案複製到 部署目錄的子資料夾,您也可以將 項目類型 變更為 複製檔案,並在該處指定其他屬性。

使用遠端符號設定偵錯

您應該能夠使用您在 Visual Studio 電腦上產生的符號對程式代碼進行偵錯。 當您使用本機符號時,遠端調試程式的效能會更好。

如果您必須使用遠端符號,需在 Visual Studio 中設定遠端符號,方法是將 Windows 檔案共用新增至符號搜尋路徑:[工具] > [選項] > [偵錯] > [符號]