从HTA页面获取WScript.Shell时遇到问题

从HTA页面获取WScript.Shell时遇到问题,shell,hta,wsh,Shell,Hta,Wsh,我有一个私有的HTA应用程序,我想从中启动bat文件和常规cmd函数(cd、delete等) 我的剧本如下: <script type="text/javascript"> var SHELL = new ActiveXObject("WScript.Shell"); function buildWorkspace() { SHELL.Run("start cmd /K", 1, true); } </script> <br/><input t

我有一个私有的HTA应用程序,我想从中启动bat文件和常规cmd函数(cd、delete等)

我的剧本如下:

<script type="text/javascript">
var SHELL = new ActiveXObject("WScript.Shell");
function buildWorkspace()
{
   SHELL.Run("start cmd /K", 1, true);  
}
</script>
<br/><input type='button' onclick='buildWorkspace();' value='Build Workspace'/>
仍然不工作-但是得到一个不同的错误:“对象不支持此属性或方法”?我还看到一个cmd窗口,但没有提示


我尝试了许多不同的引号和命令排列(尝试了CD和DIR),但仍然存在相同的错误。最终结果应该允许我删除一个目录并启动一个包含三个参数的bat文件。你知道我做错了什么吗?

结果是纯粹的愚蠢x2

1) 文件夹分隔符必须是\n而不是/。我很确定你可以用任何一个,但只有当我切换到\时它才起作用。我收到了一些关于无效选项的消息,这些消息给了我关于这个的消息

2) 您必须在bat文件中包含扩展名-您不能只使用“batfile”,您必须使用“batfile.bat”


这一切真的很奇怪,因为如果我打开一个CMD提示符并使用正斜杠或省略.bat扩展名,它就可以正常工作。

结果是纯粹的愚蠢x2

1) 文件夹分隔符必须是\n而不是/。我很确定你可以用任何一个,但只有当我切换到\时它才起作用。我收到了一些关于无效选项的消息,这些消息给了我关于这个的消息

2) 您必须在bat文件中包含扩展名-您不能只使用“batfile”,您必须使用“batfile.bat”

所有这些都很奇怪,因为如果我打开一个CMD提示符并使用正斜杠或省略.bat扩展名,它就可以正常工作

var status = SHELL.Exec("cmd");