【问题标题】:Parse command to CMD from VBScript从 VBScript 将命令解析为 CMD
【发布时间】:2019-04-08 12:29:11
【问题描述】:

我正在尝试将命令 echo msg>com4 从 Web 应用程序解析为 CMD。我尝试了不同的方法,但我无法做到。在这种情况下,我也想在不弹出 CMD 运行并关闭它的情况下显示结果。

这是我的脚本:

<html>
<head>
<script language="vbscript" type="text/Vbscript"> 
Function cmdRun( )
    Dim shell, fileName
    Set shell = CreateObject("WScript.Shell")
    Set proc = shell.Exec("echo msg>com4")
End Function
</script>
</head>

<body>
    <input type="button" onclick="cmdRun()" value="copy" />
</body>
</html>

有时它会显示错误“VBA 脚本 424:需要对象”。当我使用 cscript 时也会显示错误。

【问题讨论】:

  • 您发布的代码不会引发您声称的错误。请创建一个 minimal reproducible example 来展示您面临的问题,然后 edit 您的问题并发布 that 代码以及引发的完整、未更改的错误 that 代码。复制粘贴。如果您无法将其复制/粘贴为文本,请发布错误消息的屏幕截图。不要转述。不要凭记忆输入。
  • 另外,运行 echo msg&gt;com4 是行不通的,b/c echo 和重定向运算符都是 CMD 内置的功能,在 CMD 之外不可用。
  • 不存在 VBA 脚本错误,请正确复制错误,以免手动输入时出现拼写错误。该错误是一个非常常见的VBScript错误。

标签: vbscript


【解决方案1】:

如果您作为 Web 应用程序运行,即从 Internet 打开页面,则您不能运行可能影响系统的程序或使用 activex 控件。

在网页上 usesafesubset 为真。

在这里查看我的答案 - What can't I use when UseSafeSubset is true?

VBScript 也不再适用于网页。仅在本地页面和 Intranet 站点上。

如果您将脚本更改为本地 VBS 文件并使用 CScript.exe 运行它并使用wscript.echo 进行打印。

cmd /c cscript //nologo MyVbs.vbs > Com4

【讨论】:

    猜你喜欢
    • 2011-07-24
    • 2013-06-08
    • 2023-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-16
    • 2017-03-08
    相关资源
    最近更新 更多