VS2019调试VBS时cscript.exe出现Script breakpoint未处理异常如何解决
Visual Studio 2019调试VBScript报错的解决方案
你提供的测试VBS代码不存在语法问题,不需要调整。可按照以下优先级排查修复问题:
- 检查脚本宿主架构匹配
Windows 10 64位系统默认存在两个版本的脚本宿主程序:C:\Windows\System32\下的64位版本、C:\Windows\SysWOW64\下的32位版本。VS 2019默认安装的脚本调试引擎多为32位版本,若你调用的是64位脚本宿主,会出现调试引擎不匹配的错误。
你可以直接以32位宿主启动调试验证:按下Win+R打开运行窗口,输入C:\Windows\SysWOW64\cscript.exe //x //d 你的测试脚本完整路径.vbs执行即可。 - 修复即时调试器注册异常
该报错大概率由vsjitdebugger.exe的注册表注册项丢失导致,无需重装系统,以管理员身份打开命令提示符,执行对应命令完成注册即可:
32位调试器注册:"C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE\vsjitdebugger.exe" /RegServer
64位调试器注册:"C:\Program Files\Microsoft Visual Studio\2019\Professional\Common7\IDE\vsjitdebugger.exe" /RegServer
执行完成后重启VS再尝试调试。 - 重新注册脚本调试相关组件
部分系统优化软件会禁用脚本调试相关COM组件的注册项,以管理员身份打开命令提示符,依次执行对应命令重新注册:
32位组件:
64位组件:regsvr32.exe C:\Windows\SysWOW64\vbscript.dll regsvr32.exe C:\Windows\SysWOW64\jscript.dll regsvr32.exe "C:\Program Files (x86)\Common Files\Microsoft Shared\VS7Debug\pdm.dll"regsvr32.exe C:\Windows\System32\vbscript.dll regsvr32.exe C:\Windows\System32\jscript.dll regsvr32.exe "C:\Program Files\Common Files\Microsoft Shared\VS7Debug\pdm.dll" - 调整VS调试配置
打开VS的工具-选项-调试-常规页面,取消勾选仅启用我的代码(仅托管)选项,该选项会阻止调试器附加到脚本类非托管进程。同时确认工具-选项-调试-即时调试页面中已经勾选了脚本选项。
配置完成后再次启动调试即可正常命中断点、查看局部变量。
内容的提问来源于stack exchange,提问作者Yulong
相关产品推荐
相关产品推荐

