我有一个基本的HTA,我试图通过按钮启动批处理文件,但是当我尝试启动批处理文件时,它不会运行。 当我按下按钮时,命令提示符窗口将启动,但不会运行脚本。
以下是代码的简单示例:
<HTML>
<HEAD>
<TITLE>Fix</TITLE>
</HEAD>
<BODY>
<FORM>
<INPUT TYPE="Run" NAME="Button" VALUE="Click">
<SCRIPT FOR="Button" EVENT="onClick" LANGUAGE="VBScript">
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "cmd.exe '.\example.bat'"
</SCRIPT>
</FORM>
</BODY>
</HTML>
如何从与HTA相同的工作目录(或子目录)启动批处理文件?
谢谢
答案 0 :(得分:6)
在任何地方启动 CMD 进程时,您需要使用 / C 或 / K 参数作为第一个参数。
/C Run Command and then terminate
/K Run Command and then return to the CMD prompt.
尝试:
WshShell.Run "cmd.exe '/C example.bat'"
但这只是解释为什么你的脚本无法工作因为不需要使用CMD,你可以直接运行批处理文件'因为 ShellExecute 。