在x64 Windows Server 2003上进行远程调试

时间:2013-04-23 11:21:45

标签: visual-studio-2010 remote-debugging

我在32位Windows Server 2003计算机上安装了一个Web服务。通过在我的机器上的共享中提供x86调试器exe,我能够使用VS 2010从我的Windows 7 64位计算机远程调试它。一切正常,直到周末他们决定将服务器机器升级到64位。

现在,当我尝试使用x86调试器进行远程调试时,它会给出错误:

Remote Debugger

当我使用x64调试器时,它不会抛出错误,但它不会加载项目的符号,所以无论如何我都无法调试它。

为什么会这样?我应该做些什么?

2 个答案:

答案 0 :(得分:1)

不确定这是否适合您,但您可以

  • 设置VS以生成x86可执行文件(构建选项,平台目标x86)
  • 或者如果您的Web服务在IIS中运行,请创建一个作为x86进程运行的应用程序池
  

转到IIS管理控制台中的应用程序池,右键单击您的   应用程序池并选择“设置应用程序池默认值...”。在里面   属性对话框,将“启用32位应用程序”设置为“True。”

这样你应该可以使用x86调试器(因为之前有效)。


显然你可以设置IIS 6在x86模式下运行:

%SystemDrive%\inetpub\AdminScripts\adsutil.vbs set w3svc/AppPools/Enable32bitAppOnWin64 1

之后也运行

%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis -i

答案 1 :(得分:0)

请确保您正在进行以下操作

  • - 确保您在服务器上有可执行文件的最新符号

  • - 运行64位版本的msvsmon.exe

  • - 在视觉工作室中的客户端,调试 - 附加到进程 - 传输(远程)限定符(您的服务器)

  • - 选择流程并点击附件

您必须在服务器和客户端上具有相同版本的可执行文件和符号