【问题标题】:php script occasionally fails to run COM processphp 脚本偶尔无法运行 COM 进程
【发布时间】:2017-05-21 05:18:11
【问题描述】:

我们在 WAMP 上有一个 PHP (5.5.15) 脚本:

$wsh_shell = new COM("WScript.Shell"); 
$retval = $wsh_shell->Run($batch_file_name, 0, false);

$batch_file_name 只是一个运行另一个 PHP 文件的 .bat 文件。 95% 的时间它可以完美运行并且能够运行该文件。剩下的 5% 只是无法运行。

有什么方法可以获取有关进程运行失败原因的更多信息?上面的 $retval 只包含 1 或 0。 wscript.shell 是否在某处记录失败?是否有其他日志可以让我了解为什么会发生这些故障?

【问题讨论】:

    标签: php com wsh


    【解决方案1】:

    我可以通过让脚本使用 Windows 任务计划程序来启动自身的新实例来解决此问题。该脚本有一个运行大约 30 分钟的循环。然后它读入配置文件并检查“重生”命令。如果为真,该脚本现在将使用 schtasks 命令行创建一个 1-time 任务以在 3 秒内重新启动自身。它已经运行了几个小时,没有任何问题。

    【讨论】:

    • 更新:大约 17 小时后,它仍然可以正常运行,并且大约每 30 分钟重生一次。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-30
    • 2017-05-22
    • 2016-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-22
    相关资源
    最近更新 更多