如何从vbscript运行批处理文件?

时间:2016-06-17 19:05:06

标签: html batch-file vbscript wsh

我有一个保存在共享驱动器(S:)中的批处理文件,我正在尝试使用vbscripts createobject方法创建一个shell脚本来运行我的批处理文件。我目前的vbscript是:

<script language="VBScript">
Sub zeprint()
Dim oShell
Set oShell = WScript.CreateObject("WScript.Shell")
oShell.CurrentDirectory = "s:"
oShell.Run "s:\batprint.bat"
Set oShell = Nothing
End Sub
</script>

然后在我的一些HTML中,我创建了一个按钮并设置onclick="zeprint()"。 我知道按钮有效,因为我使用它来分配给window.print();。 我一直在寻找答案,但似乎无法弄清楚为什么它不起作用。从命令提示符手动运行时,批处理文件也可以正确运行。这让我相信它是vbscript的一个问题。

任何帮助都将不胜感激。

3 个答案:

答案 0 :(得分:0)

这对我有用:

Set oShell = WScript.CreateObject("WSCript.shell")
oShell.run "c:\test.bat"

或使用

oShell.run "test.bat"

如果VBS和BAT位于同一位置。

无法找到.bat文件的位置时失败。

答案 1 :(得分:0)

您需要使用目的地的绝对路径而不是驱动器号。 还要确保路径目标所在的设备没有窗口配置,以便在几分钟后节能和磁盘关闭。

答案 2 :(得分:0)

请参见下文-将“ CALC”更改为“ C:\ Batchfile.bat”,等等:

Set oShell = WScript.CreateObject("WSCript.shell")

a=msgbox("Run Calculator?" , vbYesNo + vbQuestion , "Run Calc?")

if a = vbyes then

oShell.run "CALC"

else

end if