使用PHP命令行运行MSI安装(Windows)

时间:2012-04-24 13:05:38

标签: php windows msiexec

我创建了一个非常复杂的PHP脚本来检查机器上安装的三个不同MSI的版本,然后按顺序升级这三个MSI。它似乎工作,但第一个MSI安装需要很长时间(约3分钟),但PHP代码提前一点(1.5到2分钟)。

我正在使用Apollo将PHP4编译为命令行EXE。对某些事情来说,似乎比bamcompile更稳定。

所以这是我的PHP代码的关键:

ob_start();
passthru("msiexec /i $fileshare\\software\\mysoftware.msi /quiet /log $logfile");
ob_end_clean();

我应该用exec()或shell_exec()或system()替换这个位吗? 也许输出缓冲不是必需的?

正如我所说,一切正常[即MSI安装完美],但我希望脚本等到MSI真正完成后再继续。

也许我可以对msiexec进程进行一些检查以完成,但是如果可能的话我不想写那个,因为我在这个严格的截止日期将这个软件推广到不同区域的500台机器还有很多其他需要考虑的因素和要编程的东西。

0 个答案:

没有答案