【问题标题】:VBScript Lauched via URL with argumentsVBScript 通过带有参数的 URL 启动
【发布时间】:2017-04-19 13:56:16
【问题描述】:

我有一个托管在网络共享中的 VBScript。我在页面上设置了一个链接,可以通过 Web 浏览器访问该脚本(即 \\server\script.vbs)。是否可以通过超链接将变量/参数传递到该脚本中?我已经尝试过 \\server\script.vbs Argument 和 \\server\script.vbs%20Argument 都不起作用。该脚本工作正常,没有参数。我在网上搜索试图找到一种方法并担心这是不可能的,所以我想我会在这里问,然后我只是用内置的参数制作单独的脚本。脚本示例如下:

Dim Var1 If Wscript.Arguments.Count = 0 then WScript.Echo "Missing parameters" Else Var1 = wscript.arguments(0) MsgBox "Passed in Variable: " + Var1 End If

【问题讨论】:

  • 超链接是什么意思?
  • @Barney 我的意思是我的网页上有一个指向 \\server\script.vbs 的链接我希望有一种方法可以将变量/参数传递到该 VBS 但只是将其添加到链接

标签: variables url vbscript arguments


【解决方案1】:

可以使用ASP,但是需要在web服务器的IIS角色中添加该特性,配置身份验证(强烈推荐Windows身份验证,不要匿名),并创建一个ASP页面来捕获内联参数(querystring)值并显示它。如果页面是“test.asp”,下面的示例将在http://myserver/test.asp?arg1=123 调用。它会显示“你输入:123”

<%
x = Trim(Request.QueryString("arg1"))
Response.Write "You entered: " & x
%>

【讨论】:

  • 我还建议你看看使用 PowerShell Web 控制台。
  • 感谢您的回答,我将链接托管在 Sharepoint 页面上,因此我无法真正设置 ASP 页面。我认为我正在寻找的东西是不可能的。我只是制作单独的 VBS 文件。
  • @mikefletcher85 如果是这样,为什么要接受答案?
  • 我会小心允许自定义脚本代码在 SharePoint 或其他生产服务器上执行。这很容易导致其他服务出现问题。
【解决方案2】:

我不确定你是否可以,但是你可以链接到一个 ASP 页面并让它运行 VBS 文件 - 该页面的这段代码应该是关闭的:

<SCRIPT LANGUAGE=vbscript>
   dim oWs
   Set oWs= CreateObject("WScript.shell")
   oWs.Run "\\yourserver\yourscript.vbs?ParameterNameHere=" & Request.QueryString("ParameterNameHere"), 1, True
   Set oWs = Nothing  
</SCRIPT>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-17
    • 2015-07-05
    • 1970-01-01
    • 2011-11-27
    相关资源
    最近更新 更多