【问题标题】:how to execute vbscript using php如何使用php执行vbscript
【发布时间】:2014-02-07 19:28:45
【问题描述】:

我有一个 VBScript 文件。当它在计算机上时,它工作正常。我想把它放在一个 php 站点上,以便通过单击按钮来执行它。但我没有成功。我有一个 VBScript 文件。当它在计算机上时,它工作正常。我想把它放在一个 php 站点上,以便通过单击按钮来执行它。但我没有成功。

代码如下:

Const ForReading = 1
Dim fso, f
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile("C:\AppServ\www\abcd\testFile.txt", ForReading)
TheFile =   f.ReadAll

myArray = Split(theFile,vbcrlf)

for i = 0 to Ubound(MyArray)
Next

txt=Space(1)

Set myShell = CreateObject("WScript.Shell")
    myShell.run "cmd"
    WScript.Sleep 100

    myShell.SendKeys"telnet 192.168.1.1"
    myShell.SendKeys("{Enter}")
    WScript.Sleep 1500

    myShell.SendKeys"myname"
    myShell.SendKeys("{Enter}")
    WScript.Sleep 1500


    myShell.SendKeys"mypassword"
    myShell.SendKeys("{Enter}")
    WScript.Sleep 1500

    myShell.SendKeys"sudo -i"
    myShell.SendKeys("{Enter}")
    WScript.Sleep 1000

    myShell.SendKeys"su - zimbra"
    myShell.SendKeys("{Enter}")
    WScript.Sleep 1000  

    myShell.SendKeys"zmprov ma " & myArray(0) & " zimbraAccountStatus locked"
    myShell.SendKeys("{Enter}")
    WScript.Sleep 1000

提前致谢。

【问题讨论】:

  • 顺便说一句,这是vbscript代码。
  • ...为什么你可以将它作为 PHP 运行?
  • 我想将我的网络数据库与我的邮件数据库连接起来。但我找到了解决方案,我用肥皂来连接它们。抱歉回复晚了..

标签: php vbscript zimbra


【解决方案1】:

PHP 无法执行 vbscript。如果您希望 php 执行任何其他语言,则必须编写某种解析器/解释器来为您执行此操作...

但是在您的情况下,将脚本简单地转换为 php 应该更容易。 telnet 客户端并不难实现。在这里可以找到一个简单的示例:telnet connection using PHP

【讨论】:

  • 它仍然无法正常工作.. 如果我手动运行带有参数“C:\a.vbs”的 cmd.exe,它可以工作,但如果我使用 php 中的 exec 函数以编程方式运行它,没有反应但是当我打开任务管理器时..有一个进程cmd.exe正在运行..我该怎么办?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-16
相关资源
最近更新 更多