Visual Studio 2017调试vbscript

6
我想使用Visual Studio 2017社区版来调试vbscript,并按照此处针对VS2015提到的步骤进行操作:

视频

我输入了:

cscript.exe /x foo.vbs

在命令行中运行,但没有启动调试器。这是否是 VS 2017 版本存在问题,或者视频中没有显示的一些步骤(例如在 VS 中的配置步骤)?编辑:我也尝试了“cscript.exe //X foo.vbs”、“cscript.exe foo.vbs //X”、“cscript.exe //X //D foo.vbs”和“cscript.exe foo.vbs //X //D”。谢谢,steff。

2
请列出您实际遵循的指令和步骤,而不是链接到视频。该视频没有文本描述,我的计算机现在也没有扬声器。 - Dai
我已经编辑了这个问题。 - steff123
3个回答

5

以上两种解决方案对我都不适用。在MSDN上找到了一个解决方法。

  1. 启动Visual Studio。
  2. 文件 ->;打开项目。
  3. 将其指向 "C:\Windows\system32\cscript.exe" (或您的Windows安装目录所在位置)。
  4. 当弹出权限提升对话框时,点击“忽略”。
  5. 进入cscript.exe节点的项目属性。
  6. 在参数中添加'//d'。
  7. 在“调试器类型”中更改为脚本。
  8. 关闭项目属性。
  9. 按下F10

我按照这个步骤操作,但是没有成功。最后出现了一条信息:“无法启动程序#path_to_cscript#,调试器未正确安装”。我认为这可能与VS->debug->options->debugging->just-in-time中只有“native”和“managed”选项有关。我看不到“script”选项。我已经尝试重新安装VS、重启电脑等方法。你能在Just-in-time调试器选项中看到“script”选项吗? - Pavel Cernik
这对我在VS2019中有效(只要我在参数中放置了我的脚本文件路径)。此外,您可以使用“添加现有项目”而不必创建全新的解决方案。 - Dave Cousineau
嗯...它几乎可以工作了。由于文件在执行时被锁定或其他原因,VS似乎存在问题,不确定。它不断想要保存解决方案,并且在调试时每隔几行就会冻结约1分钟。也许它确实需要自己的解决方案。 - Dave Cousineau

4
请以管理员身份运行您的VS2017,然后在“工具”->“选项”->“调试”->“即时调试”下启用脚本选项,然后重新进行调试。

enter image description here

即使我没有使用VS2017社区版,但我遇到了同样的问题,我发现这与我在使用VS2017企业版时的JIT调试有关,在我启用它后它可以正常工作:

enter image description here


似乎在Visual Studio 2017社区版中没有此选项。 - Tarun Lalwani

2

CSCript.exe需要双斜杠来表示其自身的命令行选项,因为单斜杠的参数会传递给脚本本身。

您应该使用cscript.exe //X而不是cscript /X

我还建议使用//D参数以便立即中断。


抱歉,忘了提到我也尝试了双斜杠。 - steff123
3
不完全正确,只有当参数后跟着脚本文件名时才需要重复。这在使用关联启动时很有用,例如myscript.vbs //B代替cscript /B myscript.vbs - intDattashame

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接