Visual Studio 2012 远程操作花费的时间比预期的要长

Posted

技术标签:

【中文标题】Visual Studio 2012 远程操作花费的时间比预期的要长【英文标题】:Visual Studio 2012 A remote operation is taking longer than expected 【发布时间】:2012-09-03 19:13:42 【问题描述】:

我在 Windows 8 64 位上运行 Visual Studio 2012。我有一个源代码控制中的 64 位项目,我正试图在我的 Windows 8 电脑上在家中运行它。应用程序构建成功,但远程调试器根本不起作用。

它显示“远程操作花费的时间比预期的要长”。我理解为什么它是远程的,因为 32 位 Visual Studio 需要访问 msvsmon.exe 以通过 64 位应用程序进行调试,但我从未见过在已签出源代码的本地计算机上发生这种情况。

我尝试重新安装 Visual Studio 2012,使用端口 (4016) 以及以管理员身份运行。通过卸载客户端检查 *** 不是问题。

我现在没有主意了。我尝试创建一个全新的本地项目进行测试并将其设置为 64 位,但操作仍然没有成功。

有什么想法或建议吗?这是 Windows 8 上的 Visual Studio 2012 的已知问题吗?

【问题讨论】:

你解决了这个问题吗? 这可能有用[Cannot start Debugger in VS2012][1] [1]: ***.com/questions/11179030/… 【参考方案1】:

我认为你应该试试这个:

以管理员身份运行 cmd.exe。 输入并运行以下两行命令:

netsh winsock 重置目录

netsh int ip reset reset.log hit

可能说需要重新启动,但实际上没有必要。 再次尝试调试您的应用程序,问题应该得到解决。

编辑: 很抱歉之前没有对此提供解释。答案其实来自一个中文论坛,原作者没有过多解释。但他确实说过这是因为Visual Studio是一个32位程序,在64位Windows 7下可能无法访问网络,上述解决方案重置网络连接因此解决了问题。希望这会有所帮助。

【讨论】:

我不得不重新输入我机器的 IP 地址,但这有效。非常感谢你。我花了几个小时试图弄清楚为什么 VS2012 想要访问网络以在 IDE 模式下运行程序并且不能但其他一切都可以正常访问网络。 它对我有用。但我真的很感激有关解决方案的解释。 @Adam :很好的答案,但没有“它是如何工作的?”回答它会降价。暂时为-1,一旦您有时间回复此遗嘱,请再次投票。 很抱歉之前没有对此提供解释。答案其实来自一个中文论坛,原作者没有过多解释。但他确实说过这是因为Visual Studio是一个32位程序,在64位Windows 7下可能无法访问网络,上述解决方案重置网络连接因此解决了问题。希望这会有所帮助。 请注意,这些命令将重置 VMWare 网络设置。这可能会导致无法从主机访问您的访客系统。【参考方案2】:

我使用 VS2012 的唯一答案是进入项目属性 > 编译 > 目标 CPU 并将选项设置为“x86”。

这似乎也与这个问题有关:Can't start debugger in VS2012 RC 他们也将此提交给了 Microsoft Connect。好像是Visual Studio的问题……

祝你好运。

【讨论】:

不幸的是,这对我没有帮助...... CS2012 RC线程中的任何解决方案也没有。 这对我有用,谢谢。实际上,我有带有 vs 2012 的 Windows 7 64 位。当我从任何 CPU 将它设置为 x86 时,它都可以工作。在 32 位操作系统 vs2012 中,在 AnyCPU 上运行良好,但在 64 位操作系统中,我需要明确设置目标操作系统。【参考方案3】:

我正在使用 VS2012(Windows7,64 位 PC)。当我选择 DEBUG - Attach to Process... 时,我确实看到了一个消息框,上面写着“64 位调试操作花费的时间比预期的要长”。我下载了 VS2010 的免费试用版,发现在 VS2010 中它运行良好。所以,我从 VS2010 (C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\Remote Debugger\x64 and C:\ ... \x86) 复制了文件 msvsmon.exe 和 msvsmon.exe.config在VS2012中进入相同的地图。现在它正在运行VS2012。希望这对你也有帮助。祝你好运。

【讨论】:

【参考方案4】:

只要我的两分钱,

我现在已经两次遇到这个问题,在我尝试了所有建议之后,结果是我本地机器上的 BitDefender 正在这样做。所以我解决这个问题的方法是尝试添加例外本地安全软件防火墙AV它的一部分。告诉它完全忽略 msvsmon.exe 和 devenv.exe,看看有什么不同。

否则,请尝试完全删除它,看看它是否可以让您调试您的解决方案。

您可以在此处查看更多信息:http://forum.bitdefender.com/index.php?showtopic=37028

我安装了最新的 BitDefender 版本,一切正常。

【讨论】:

【参考方案5】:

VS 2015 中的解决方案。我有一个公共 dns 条目映射到我的本地 iis 和项目的 web/debug 选项卡:

<app>.<domain>.co.uk

只需将其作为本地主机添加到 hosts 文件中:

127.0.0.1 <app>.<domain>.co.uk

因此 VS 不再认为主机是远程机器。

【讨论】:

【参考方案6】:

这个问题的解决方法是:

导航到 C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\Remote Debugger 打开 x64 文件夹并将 msvsmon.exe 文件重命名为 msvsmon_old.exe 现在,导航到 x86 文件夹并复制 msvsmon.exe并将其粘贴到 x64 文件夹中。重新启动 Visusl Studio 2012 IDE,现在尝试在调试期间附加到进程

【讨论】:

虽然它会以某种方式解决问题,但我认为这意味着您正在用 32 位调试器替换 64 位调试器,而不是解决 64 位调试器无法解决的核心问题连接。 Adam Liu 提出的网络重置解决了核心网络问题,并让您保留 64 位调试器,这似乎是更明智的做法。【参考方案7】:

对我有用的是卸载一个名为“sendori”的程序

【讨论】:

以上是关于Visual Studio 2012 远程操作花费的时间比预期的要长的主要内容,如果未能解决你的问题,请参考以下文章

Visual Studio 2012 中的远程调试

Visual Studio 2012 远程调试:对内存位置的无效访问

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

无法在 Windows Server 2008 上运行 Visual Studio 2012 远程调试器

远程进程的 Visual Studio 2012 调试未按预期工作

从 Visual Studio 2012 到远程 IIS 8 服务器的 Web 部署