Visual Studio 2010 远程调试 - 无法连接:拒绝访问

Posted

技术标签:

【中文标题】Visual Studio 2010 远程调试 - 无法连接:拒绝访问【英文标题】:Visual Studio 2010 remote debugging - Unable to connect: Access Denied 【发布时间】:2012-03-16 21:55:34 【问题描述】:

我正在尝试远程调试 exe,但我不断收到错误消息。配置如下:

在开发机器上:

Windows Vista 32 位 Visual Studio 2010 防火墙已禁用

在远程机器上:

Windows 7 64 位 msvsmon.exe(从开发机器共享) MyProgram.exe(32 位、C#、.Net 4.0) 防火墙已禁用

两台机器在同一个域中。我使用同一个帐户登录,该帐户在两台计算机上都具有管理员权限。

这就是我的工作:

在远程计算机上启动 msvsmon.exe(使用“以管理员身份运行”) msvsmon 输出:已创建名为 domain\login@machine 的新服务器。等待输入连接。 来自 Visual Studio:调试 > 附加到进程。用 domain\login@machine 填充 Qualifier 字段 visual studio 输出:无法连接到名为“machine”的 Microsoft Visual Studio 远程调试监视器。访问被拒绝。 msvsmon 输出域\登录已连接

我错过了什么?

编辑:

如果开发机器也是 64 位(在 Win7 x64 上尝试过),它看起来也可以工作。所以现在的问题是:如何让它在我的 Windows Vista 32 上运行?

【问题讨论】:

您的网络中是否有一个或多个物理防火墙?如果是,那么您还应该将其配置为打开一些端口(有关详细信息,请参阅MSDN)。 不确定它是否适用于您的确切设置,但在类似设置中总是给我带来问题的一件事是,如果远程和本地调试器二进制文件版本不同。远程计算机上的 msvsmon 版本是否与您尝试连接的版本相同? 我不太了解内部结构,但我认为 x64 可能会导致问题。你能从 x64 开发机器上试试吗(相同的设置)? msvsmon 是否在远程机器上作为 32 位进程运行? 我现在不能轻易使用 x64 开发机器。 msvsmon的版本是VS2010自带的x86(不过我也试过x64的版本,运气不好)。 好吧,在 64 位开发环境中尝试并不难,而且运行良好 (!)。 【参考方案1】:

所以答案是:不可能。

要在远程 64 位机器上调试进程(32 位或 64 位),您必须在本地使用 64 位机器。

【讨论】:

以上是关于Visual Studio 2010 远程调试 - 无法连接:拒绝访问的主要内容,如果未能解决你的问题,请参考以下文章

我可以在 Windows XP 上使用 Visual Studio 2010 远程调试器从 Visual Studio 2012 调试 .Net 4.0 应用程序吗?

远程调试 .NET 代码 Visual Studio 2010

如何在 Visual Studio 2010 中关闭远程调试?

是否可以使用 Visual Studio 远程调试 VirtualBox?

Visual Studio中的远程调试:远程调试器不支持这个版本的windows

Visual Studio (VS2008) 中的远程调试,Windows 窗体应用程序