WSH 5.7的shell.Run执行错误的Scripting Host引擎?

时间:2010-07-22 09:16:18

标签: javascript wsh

我使用WSC(用JScript编写并使用scrobj.dll运行的COM服务器),它使用shell.Run(“TheOtherScript.js”)启动其他脚本文件;

使用新的ActiveXObject(PROGID)实例化WSC服务器。在WSH 5.6之前,我可以使用命令

为shell.Run设置执行引擎

WScript // H:CScript

或使用// H:WScript获取我需要的引擎。对于交互模式,我需要WScript在WScript.Echo上弹出一个消息框;对于禁止的非交互模式,因为它保持执行。

更新到WSH 5.7之后,TheOtherScript.js中的WScript.Echo总是会生成一个MessageBox,与之前传递的// H:参数无关。这会破坏所有无人参与的脚本执行。

我认为这是WSH 5.7中的一个错误,何时可以修复,我该如何构建解决方法?

2 个答案:

答案 0 :(得分:0)

shell.Run("cscript //E:??? TheOtherScript.js");

其中???是您要使用的引擎。

答案 1 :(得分:0)

您需要更改服务器以控制应使用哪个脚本引擎。为了避免所有客户端最好的方法是定义一个环境变量来控制选择。