我在脚本上使用Stop语句时遇到JIT调试器事件触发器时遇到严重问题。
我和其他两位同事一直在研究这个问题,我们都不知道问题是什么。我们已经卸载并重新安装了Microsoft脚本编辑器,并且我们已经更新了注册表值,我们已将自己添加到调试器用户组中。我们有管理员权限等。
不使用此调试器不是一个选项,是一个项目要求,但我们不能让它在我们的两台机器上工作。但是,团队领导机器确实有效。但我们有2台机器,调试事件不会触发。比较设置时,一切似乎都是有序的。
我们已按照MSDN上的说明以及网络上发现的其他各种说明进行操作。
答案 0 :(得分:0)
MDM.exe是否在任务管理器中运行? (它是一项服务,机器调试管理器)。
cscript //x nameofscript.vbs
工作?
答案 1 :(得分:0)
在一年之后偶然发现这篇文章...希望在此期间你找到了解决方案。
当我需要JIT-Debug我的VBS脚本时,我也遇到了问题。我已经意识到调试器不会在Stop语句中启动,但仅限于抛出 Exception 的情况;在调试模式之后,Stop语句应该再次起作用,但是您需要生成异常才能调用调试器。
当我需要打破VBScript时,我通常会调用一个不存在的函数来故意引起一个ecxeption:这将触发调试器并且我能够使用它。
示例代码:
(do something)
DEBUG_INVOKE ' Function DEBUG_INVOKE does not exist => Exception.
' you can actually type whatever you want, eg. 'stp', 'stopp', 'xxx', etc.
' provided, of course, it's NOT the name of a Sub or Function present in
' your script.
(do other stuff)
进入调试模式后,您可能无法从中断位置移动:它取决于调试器:我知道,即MS Script Debugger和Visual Studio 2015社区Ed。这样做,而MS Script Editor和Visual Studio 2010 Professional允许您移动指针并执行逐步调试。还在调查这个!
HTH,
Max - 意大利