例如,如果App-A尝试安装App-B。有没有办法让App-A知道App-B何时完成安装并且可以运行?
具体我尝试使用AIR 2在Windows上安装ChromeSetup.exe。
好的信息人员,在审核了你的所有答案之后,似乎我应该使用-ms
参数运行安装程序,以便它以静默方式安装。然后听取NativeProcessExitEvent.Exit
事件。我会尝试,看看它是否有效。
答案 0 :(得分:0)
安装程序通常会生成在安装期间为事件提供输出的日志。在您的情况下,可以从App-B安装程序中搜索生成的日志文件,并查看它以衡量成功或失败。但是,如果您只是将App-B安装程序作为命令行可执行文件运行,则可以同步调用它并等待它完成。
答案 1 :(得分:0)
通常,安装程序只会退出并且系统()调用将返回。
或者您可以编写脚本安装程序及其自己的脚本语言来控制序列。
答案 2 :(得分:0)
一般来说,安装程序将作为进程运行,您可以等待该进程完成。在POSIX下你可以使用spawn
,而其他一些系统提供相同或最不相似的东西。
答案 3 :(得分:0)
它取决于(TM)。
大多数时候,应用程序的安装程序是一个可执行文件 - 所以你可以启动它并等到执行回复给你,但我看到了一些邪恶的混乱,比如“downloader unpacker - > installer downloader - >安装程序解包器 - >安装程序“,它在后台启动了下一个可执行文件。尝试使用您正在使用的特定应用程序,看看简单的system()方法是否有效。如果没有,您必须监视进程列表以查看其他安装程序是否已完成。
答案 4 :(得分:0)
如果我理解得很清楚,您正在编写安装程序,并且您希望将Chrome安装为先决条件或类似内容?
如果是这样,您可以根据我在Web上看到的内容,使用“-ms”参数静默运行安装程序。
然后如何调用它取决于您正在编写安装程序的编程语言或系统:例如,从批处理文件中,您将执行
start /wait "" GoogleSetup.exe -ms
但是如何调用单独的进程并等待其终止取决于您正在使用的开发语言和系统。它们中的大多数都提供启动外部进程的功能,并且几乎毫不费力地等待它们的终止。