在虚拟 Windows 机器上进行远程调试

Remote Debugging on a Virtual Windows Machine

我正在尝试使用 Visual Studio 2017 调试一个应用程序,我将 运行 在我在我的开发系统上设置的虚拟机上。虚拟机 运行s Windows 10(我的开发系统也是)。

我已经在虚拟机上安装了最新的 VS 2017 Remote Tools 包,并进行了配置。很高兴在虚拟机上运行ning...但是我无法从桌面系统连接到它。

当我执行附加到进程和查找系统时,找到了虚拟机。

但是,在选择虚拟机后,系统提示我输入凭据。我已尝试使用与登录虚拟机相同的登录凭据,但这不起作用。并且没有显示可能是什么问题的信息。

虚拟机 运行正在 Hyper-V 下运行。

如何在我 运行ning VS 2017 所在的同一系统上设置与虚拟机 运行ning 的远程调试连接?

我 运行 遇到了同样的问题,并在付出很多努力后设法使其正常工作。

首先,尝试将调试器身份验证模式切换为 "No Authentication"(工具 -> 选项)并在 Visual Studio 中设置您的项目以匹配(请参阅特定于语言的 links MS 文档 link 下面)。这将帮助您确定这是凭据问题还是其他问题。

microsoft docs说,"You can run the remote debugger under a user account that differs from the user account you are using on the Visual Studio computer, but you must add the different user account to the remote debugger's permissions."

在我的例子中,我 运行 在两台机器上使用相同的帐户并将我的帐户添加到调试器的权限中,但它仍然不起作用。我们使用 Azure AD,我使用的是域帐户。我的 VS 计算机在域中,而 VM 不在域中(即使我可以使用域帐户登录)。将 VM 添加到域后,我可以在调试器设置中启用 "Windows Authentication" 进行连接。