Vbs代码不能在hta中工作

时间:2014-04-09 09:29:54

标签: html windows windows-7 vbscript hta

我在这里有这个vbscript代码:

Set fso = CreateObject("Scripting.FileSystemObject")
Set objShell = CreateObject("WScript.Shell")
Sub Write
Set oFile = fso.OpenTextFile("Text.txt",8,true)
oFile.close
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "m1.hta"
End Sub

这将生成一个文本文件并启动m1.hta,它完美无缺。但是当我把它放到像这样的hta文件中时:

<Script Language="VBscript">
Set fso = CreateObject("Scripting.FileSystemObject")
Set objShell = CreateObject("WScript.Shell")
Sub Write
Set oFile = fso.OpenTextFile("Text.txt",8,true)
oFile.close
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "m1.hta"
End Sub
</Script>
<input type="Button" value="GO" onclick="Write">

我似乎遇到了这个错误:

Image of error

我的问题首先是代码有什么问题,其次我将如何修复它。提前谢谢。

2 个答案:

答案 0 :(得分:1)

将此WScript.CreateObject("WScript.Shell")

替换为CreateObject("WScript.Shell")

答案 1 :(得分:0)

HTA使用mshta.exe来运行脚本。 mshta.exe无法识别wscript对象。这就是出错的原因。

运行.vbs文件时,将使用wscript.exe,它将完美地运行您的代码。

因此,从代码中删除wscript应该可以正常工作。