來源:遠程調試C#或 Visual Studio 中的 Visual Basic 項目
若要調試已部署在另一台計算機的 Visual Studio 應用程序,安裝和在其中部署您的應用程序的計算機上運行遠程工具、 將項目配置為從 Visual Studio 中,連接到遠程計算機,然后運行應用。
有關遠程調試通用 Windows 應用 (UWP) 的信息,請參閱調試安裝的應用程序包。
要求
遠程調試器是在 Windows 7 上受支持和更高版本 (不 phone) 和從 Windows Server 2008 Service Pack 2 的 Windows Server 的版本。 有關要求的完整列表,請參閱要求。
備注
不支持調試通過代理連接的兩台計算機之間。 調試通過高延遲或低帶寬連接,例如撥號 Internet,或通過 Internet 跨國家/地區不建議並可能會失敗或很令人無法接受慢。
下載和安裝遠程工具
在遠程設備或服務器,你想要調試,而非 Visual Studio 計算機,下載並安裝遠程工具的正確版本從下表中的鏈接。
- 下載最新版本的 Visual Studio 遠程工具。 最新的遠程工具版本兼容使用早期的 Visual Studio 版本,但早期的遠程工具版本不是與更高版本的 Visual Studio 版本兼容。
- 下載的遠程工具使用相同的體系結構在計算機安裝它們。 例如,如果你想要調試遠程計算機運行 64 位操作系統上的 32 位應用程序,安裝 64 位遠程工具。
Version | 鏈接 | 說明 |
---|---|---|
Visual Studio 2017(最新版本) | 遠程工具 | 與所有 Visual Studio 2017 版本兼容。 下載匹配您設備的操作系統 (x 86、 x64、 或 ARM64) 的版本。 在 Windows 服務器上,請參閱取消阻止文件下載下載遠程工具的幫助。 |
Visual Studio 2015 | 遠程工具 | Visual Studio 2015 遠程工具可從 My.VisualStudio.com。 如果系統提示,請加入免費Visual Studio Dev Essentials程序或使用 Visual Studio 訂閱 id。 登錄 在 Windows 服務器上,請參閱取消阻止文件下載下載遠程工具的幫助。 |
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 遠程工具下載中可用。
提示
在某些情況下,它可以是最有效,若要從文件共享運行遠程調試器。 有關詳細信息,請參閱從文件共享運行遠程調試器。
設置遠程調試器
-
在遠程計算機上查找和啟動遠程調試器從啟動菜單。
如果在遠程計算機上沒有管理權限,請右擊遠程調試器應用,然后選擇以管理員身份運行。 否則,只是它正常啟動。
可能有不同版本的msvsmon.exe中x64, x32,或其他文件夾。 請確保啟動要調試您的應用程序所需的版本。
-
第一次啟動遠程調試器 (或之前已配置),遠程調試配置對話框隨即出現。
-
如果 Windows Web 服務 API 未安裝,這種情況發生,僅在 Windows Server 2008 R2 上,選擇安裝按鈕。
-
選擇你想要在使用遠程工具的至少一個網絡類型。 如果這些計算機通過域連接,則必須選擇第一項。如果這些計算機通過工作組或家庭組連接,選擇相應的第二個或第三個項。
-
選擇配置遠程調試,配置防火牆並啟動遠程調試器。
-
配置完成后,遠程調試器窗口會顯示。
遠程調試器現在正在等待連接。 使用服務器名稱和端口號顯示在 Visual Studio 中設置的遠程連接配置。
若要停止遠程調試器,請選擇文件 > 退出。 您可以重新啟動它從啟動菜單中,或從命令行:
<Remote debugger installation directory>\msvsmon.exe
備注
如果您需要添加其他用戶的權限更改身份驗證模式,或者遠程調試器的端口號,請參閱配置遠程調試器。
遠程調試項目
調試器不能將 Visual C# 或 Visual Basic 桌面應用程序部署到遠程計算機,但你仍然可以按如下所示方法遠程調試它們。 以下過程假設你想要在名為的計算機上調試它MJO DL下, 圖中所示。
-
創建一個名為“MyWpf”的 WPF 項目。
-
在代碼中的某個容易到達的地方設置斷點。
例如,可在按鈕處理程序中設置斷點。 若要執行此操作,打開 MainWindow.xaml,然后添加一個按鈕控件從工具箱中,雙擊按鈕以打開它的處理程序。
-
在解決方案資源管理器,右鍵單擊該項目並選擇屬性。
-
在“屬性”頁上,選擇"調試"選項卡。
-
請確保“工作目錄”文本框為空。
-
選擇使用遠程計算機,然后鍵入MJO-DL:4022在文本框中。 (4022 是遠程調試器窗口中顯示的端口號。 端口號遞增每個版本的 Visual Studio 中的 2)。
-
請確保未選中“啟用本機代碼調試”。
-
生成項目。
-
在遠程計算機上創建一個文件夾,其路徑與 Visual Studio 計算機上的調試文件夾相同:<source path>\MyWPF\MyWPF\bin\Debug。
-
將你剛才從 Visual Studio 計算機生成的可執行文件復制到遠程計算機上新創建的文件夾。
注意
對代碼或重新生成不會進行任何更改 (或必須重復此步驟)。 復制到遠程計算機的可執行文件必須與你的本地源和符號完全匹配。
可以手動復制該項目,使用 Xcopy、 Robocopy、 Powershell 或其他選項。
-
請確保在目標計算機上正在運行遠程調試器 (如果不是,搜索遠程調試器中啟動菜單)。 遠程調試器窗口外觀如下所示。
-
在 Visual Studio 中,開始調試(單擊“調試”>“啟動調試”,或按 F5)。
-
如果系統提示,請輸入網絡憑據以連接到遠程計算機。
所需的憑據會有所不同,具體取決於網絡的安全配置。 例如,在域的計算機,可以輸入你的域名和密碼。 在非域計算機上,你可能會輸入計算機名稱和有效的用戶帳戶名稱,如MJO-DL\name@something.com,以及正確的密碼。
應看到遠程計算機上打開了 WPF 應用程序的主窗口。
-
如果有必要,請采取措施以命中斷點。 你應看到該斷點處於活動狀態。 如果不是,則尚未加載應用程序的符號。 重試,並且如果這不起作用,獲取有關加載符號的信息和如何解決在這些問題了解符號文件和 Visual Studio 的符號設置。
-
在 Visual Studio 機器上,你應看到執行在斷點處停止。
如果有需要應用程序使用任何非代碼文件,您需要將其包含在 Visual Studio 項目。 為其他文件創建項目文件夾(在“解決方案資源管理器”中,單擊“添加”>“新建文件夾”)。 然后將文件添加到文件夾(在“解決方案資源管理器”,單擊“添加”>“現有項目”,然后選擇文件)。 在每個文件的“屬性”頁中,將“復制到輸出目錄”設置為“始終復制”。
使用遠程符號設置調試
你應能夠使用你在 Visual Studio 計算機生成的符號調試你的代碼。 使用本地符號時遠程調試器的性能更佳。 如果必須使用遠程符號,則需要告訴遠程調試監視器以查找遠程計算機上的符號。
從 Visual Studio 2013 Update 2 開始,你可以使用以下 msvsmon 命令行開關以托管代碼中使用遠程符號: Msvsmon /FallbackLoadRemoteManagedPdbs
有關詳細信息,請參閱遠程調試幫助 (按F1中的遠程調試器窗口中或單擊幫助 > 用法)。 你可以找到詳細信息在.NET 遠程符號加載更改 Visual Studio 2012 和 2013年中