我在32位Windows Server 2003计算机上安装了一个Web服务。通过在我的机器上的共享中提供x86调试器exe,我能够使用VS 2010从我的Windows 7 64位计算机远程调试它。一切正常,直到周末他们决定将服务器机器升级到64位。
现在,当我尝试使用x86调试器进行远程调试时,它会给出错误:
当我使用x64调试器时,它不会抛出错误,但它不会加载项目的符号,所以无论如何我都无法调试它。
为什么会这样?我应该做些什么?
答案 0 :(得分:1)
不确定这是否适合您,但您可以
转到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
- 在视觉工作室中的客户端,调试 - 附加到进程 - 传输(远程)限定符(您的服务器)
您必须在服务器和客户端上具有相同版本的可执行文件和符号