Using HTA in vbscript

前端 未结 2 2011
灰色年华
灰色年华 2021-01-14 06:22

While using HTA userform for VBscript, I found that HTA doesn\'t support WScript and its objects/methods.

Is there any alternate way of creating userform or is thery

相关标签:
2条回答
  • 2021-01-14 06:39

    An alternative to WScript.Echo would be to simply add content to the DOM:

    <script language="vbscript">
        dim div: set div = document.getElementById("output")
        div.innerText = "output"
    </script>
    
    <div id="output"/>
    

    or if you want a dialogbox instead, you can use MsgBox()

    <script language="vbscript">
        MsgBox "output"
    </script>
    

    You can use Scripting.FileSystemObject without WScript

    <script language="vbscript">
        dim fso: set fso = CreateObject("Scripting.FileSystemObject")
        dim path: path = fso.GetAbsolutePathName(".")
        '... etc
    </script>
    
    0 讨论(0)
  • 2021-01-14 06:47

    Put your Wscript code to a .wsf-file and call the script like this:

    shell=new ActiveXObject('WScript.Shell');
    shell.Exec('WScript //Job:job_id PATH_TO_YOUR_WSF_FILE');
    

    Via .wsf you can use also methods like WScript.Sleep(), WScript.SendKeys() etc. which are not available in HTA.

    More info at MSDN: Windows Script Host

    0 讨论(0)
提交回复
热议问题