从javascript运行bat文件

morha13

我正在尝试使用javascript运行bat文件。我尝试使用Powershell,但似乎无法正常工作。这是我尝试的代码:

var oShell = WScript.CreateObject("WScript.Shell");
oShell.Exec("D:");
oShell.Exec("cd dir");
oShell.Exec("start user.bat");

我也尝试过:

var oShell = WScript.CreateObject("WScript.Shell");
oShell.Exec("start D:\dir\user.bat");

有时它运行,有时我得到那些错误“期望的十六进制数字”,“访问被拒绝”。我真的很困惑 我要做的就是从javascript文件执行bat文件。

有人知道该怎么做吗?谢谢!

比尔·斯图尔特

首先,JavaScript没有任何操作系统服务。因此,您实际上指的是恰巧用JavaScript编写的Windows脚本宿主(WSH)脚本。

其次,start它不是可执行文件,而是内置的命令cmd.exe

随着混乱的消失,听起来您想从WSH脚本执行Shell脚本(批处理文件)。最简单的方法是这样的(这与您已经尝试过的方法有些接近):

var wshShell = new ActiveXObject("WScript.Shell");
wshShell.Run("D:\\dir\\user.bat");

要创建WshShellCOM对象引用(progid WScript.Shell),请使用new关键字和ActiveXObject构造函数。另外,您需要\在JavaScript字符串中加倍反斜杠(),因为\转义JavaScript字符串中的字符。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章