使用PHP或ASP等内联参数调用HTA应用程序

时间:2013-04-25 16:06:49

标签: scripting parameters arguments intranet hta

是否可以调用托管在内部网站(Intranet)上的.HTA应用程序,并使用标准“?var = value”和“& var = value”语法传递参数/参数?我知道可以使用类似WScript的语法启动它们,例如“app.hta arg1 arg2 ...”。但即使解析为%20等,我似乎也无法让空格正常工作

1 个答案:

答案 0 :(得分:2)

您可以通过指定C:\helloworld.hta "arg1"之类的路径将命令行参数传递给HTA。下面是一个示例,将其保存到目录并使用此语法运行它C:\helloworld.hta "admin" "user"确保用引号括住arg,此脚本中的代码使用Split Function将命令行拆分为引号。 / p>

<html>
<head>
<title>Hello World with Args</title>
<HTA:APPLICATION
  APPLICATIONNAME="Hello World with Args"
  ID="HelloWorldwithArgs"
  VERSION="1.0"/>
</head>

<script language="VBScript">
    Sub Window_OnLoad
        Window.resizeTo 400, 300

        args = Split(HelloWorldwithArgs.commandLine, Chr(34))
        For i = 3 To (UBound(args) - 1) Step 2
            Select Case LCase(args(i))
                Case "admin"
                    strAdmin = "Hello World!!" & vbCrLf & "You passed the admin arg."
                Case "user"
                    strUser =  "Hello World!!" & vbCrLf & "You passed the user arg."
            End Select
        Next

        DataArea.innerHTML = strAdmin & vbCrLf & strUser

    End Sub
</script>

<body bgcolor="white">
    <h1 align="center">Hello World</h1>
    <textarea align="center" name="DataArea" id="DataArea" rows="5" cols="40"></textarea><br /><br />
    <input type="button" style="width:100px;" name="btnExit" id="btnExit" value="Exit" onclick="self.close()">
</body>
</html>