0

我是 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">
&nbsp;&nbsp;&nbsp;
<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>

提前致谢!

4

1 回答 1

1

您的代码中的一些详细信息:

您在整个文件中都有脚本。将它们放在headand / orbody中,但不要放在这两个元素之外。

WScript对象在 HTA 中不可用:成功fs = CreateObject("Scripting.FileSystemObject");了。

这里的引用CreateFolder(C:\TEMP1234")是可疑的,它是成对的还是额外的?路径名不能包含引号,因此需要解决一些问题。

第一个有错别字input,漏掉=<input ... onClick"getSelection">。这很关键,因为getSelection从未调用过。

于 2013-02-18T13:16:31.363 回答