从32位Windows XP客户端到64位Windows 2008 Server的VS2008远程调试问题

时间:2009-10-17 12:51:34

标签: visual-studio-2008 debugging windows-xp 64-bit windows-server-2008

我们在使用32位XP客户端计算机上的Microsoft Visual Studio 2008和Hyper-V上的64位Windows Server 2008虚拟机进行远程录制时遇到问题。当我们在本地调试Web项目时,我们可以使用相关符号正确地看到模块窗口中加载的模块(Ctrl + Alt + U)。

当我们尝试远程调试项目并附加到进程时,我们在断点处获得黄色三角形,并显示消息“没有符号已加载且断点不会被命中”,当我们查看模块窗口时(Ctrl + Alt + U)唯一已经加载的dll是ntdll.dll,wow64.dll,wow64win.dll和wow64cpu.dll。

任何人都可以确认这种远程调试是否可行,或者一切都需要是32位还是64位。我们在具有相同项目的32位远程服务器上没有问题。

2 个答案:

答案 0 :(得分:1)

根据MSDN上的How to: Debug 64-Bit Applications,只要您在目标计算机上运行正确版本的远程调试器,32位到64位调试就可以正常工作:

  

如果您正在远程调试,请使用Visual   Studio 2005可以在WOW64下运行   一台32位的机器。你可以调试两者   IA64和x64应用程序,以及   在或下运行的32位应用程序   x64 WOW模式或32位平台。

     

调试运行的64位应用程序   在远程计算机上,您需要   安装64位远程调试器   远程计算机。 64位遥控器   调试器在最后一张光盘上可用   您的Visual Studio 2005   安装集。

     

进行调试   一个64位的应用程序,你必须使用   正确的版本,这是远程   “开始”菜单上的调试器(x64)。

Visual Studio 2008 Service Pack 1远程调试器的正确版本可以是downloaded directly from Microsoft

答案 1 :(得分:0)

它也适用于我,从32位XP到64位Win7。我正在使用msvmon的x64版本。

我很难设置一切...创建2个相同的本地用户,使用runas运行msvmon和vs2008作为本地用户,最后我无法让共享驱动器工作..所以我认为我必须在目标PC上共享一个驱动器,因为托管程序集有(?)从网络驱动器运行的问题。

奇怪的是,我还必须在vs-PC(c:..)上创建适当的目录结构,即使输出转到远程驱动器(c:..,但在msvmon-PC上)。

此外,第一次(少数?)运行需要几分钟甚至开始。之后一切都进展得很快。