VS2017远程调试Chrome报错:需使用64位MSVSMON.exe
解决VS2017调试Chrome时远程调试器架构不兼容的问题
我来帮你搞定这个问题——这个报错的核心原因是Chrome属于64位进程,但VS默认启动的是32位版本的远程调试器,两者架构不匹配导致冲突。虽然你已经找到了x64版本的MSVSMON.EXE,但需要让VS主动调用它才能保留JavaScript调试功能,具体步骤如下:
配置项目使用64位目标平台
右键你的Web项目,选择「属性」→切换到「生成」标签页,在「目标平台」下拉菜单中选择x64,确保项目编译和运行的架构和Chrome一致。指定VS使用64位远程调试器
- 打开项目属性的「Web」标签页,找到「调试」区域
- 在调试器相关设置中,手动指定远程调试器路径为:
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\Remote Debugger\x64\MSVSMON.EXE - 保存设置并关闭属性窗口
启用64位IIS Express(如果用IIS Express调试)
打开VS的「工具」→「选项」→「项目和解决方案」→「Web项目」,勾选「使用64位版本的IIS Express进行网站和项目」,这样IIS Express也会以64位模式运行,和Chrome、远程调试器的架构完全匹配。清理旧调试器进程
打开任务管理器,结束所有MSVSMON.EXE进程(包括32位和64位的),然后重新打开VS并启动调试,确保这次调用的是你指定的x64版本调试器。
完成这些步骤后,你应该就能在Chrome中正常调试,同时保留ASP.NET的JavaScript调试功能了。之前禁用JS调试能正常工作,是因为此时VS不会启动远程调试器处理JS调试请求,自然避开了架构不兼容的问题,现在通过统一架构就能解决根本问题。
内容的提问来源于stack exchange,提问作者William
相关产品推荐
相关产品推荐

