我是VBScripting的新手,但是能够使用VBScript创建一些.wsf文件,这对我有很大的帮助。
我决定更进一步,使用HTML应用程序让它们更具互动性。我已经完成了相当多的阅读,看起来我不能在.hta文件中使用WScript,但我看不到一种干净,简单的方法来使其工作。我真的很感激一些指示或最佳实践想法,以帮助我站起来。
无论如何,代码就是这样,希望是非常自我解释的:
set fs = WScript.CreateObject("Scripting.FileSystemObject")
set oShell = CreateObject("Wscript.Shell")
set objShell = CreateObject("Shell.Application")
currDir = oShell.currentDirectory
CreateFolder(C:\TEMP1234")
Function CreateFolder(foldr)
dim create
if(fs.FolderExists(foldr)) then
Msgbox "Folder already exists: "+foldr
else
fs.CreateFolder(foldr)
end if
End Function
</script>
<body>
<p>Please make selection</p>
<input type="checkbox" name="Selection" value="1.">Option 1<br>
<input type="checkbox" name="Selection" value="2.">Option 2<br>
<input id=runbutton class="button" type="button" value="OK" name="ok_button" onClick"getSelection">
<input id=runbutton class="button" type="button" value="Cancel" name="cancel_button" onClick="CancelScript>
</body>
<script language="VBScript">
Sub getSelection
if Selection(0).Checked then
option1
end if
if Selection(1).Checked then
option2
end if
if radioChoice="" then
exit sub
end if
end sub
Sub CancelScript
Self.Close()
end sub
sub option1
Msgbox "Option 1 Selected"
end sub
sub option2
Msgbox "Option 2 selected"
end sub
</script>
提前致谢!
答案 0 :(得分:1)
您的代码中的一些详细信息:
你的文件全部都是脚本。将它们放在head
和/或body
中,但不在这两个元素之外。
WScript
对象在HTA中不可用:fs = CreateObject("Scripting.FileSystemObject");
可以解决问题。
这里的引用CreateFolder(C:\TEMP1234")
是可疑的,它是无对的还是额外的?路径名不能包含引号,因此需要修复。
第一个input
中有一个拼写错误,=
中缺少<input ... onClick"getSelection">
。这很关键,因为永远不会调用getSelection
。