gpt4 book ai didi

windows-installer - 安装 MSI 时如何以编程方式检测成功或失败?

转载 作者:行者123 更新时间:2023-12-04 07:46:34 26 4
gpt4 key购买 nike

我有一个 bootstrap 应用程序,它安装了几个 MSI 包。但是,如果安装失败,Windows 安装程序似乎不会返回任何错误代码。例如,如果我点击“取消”,以下命令行测试不会打印“失败”:

msiexec /i myinstaller.msi || echo failed

鉴于缺乏错误反馈,检测安装失败的最佳方法是什么?

正如接受的答案所暗示的那样,实际上返回了错误代码。出于某种原因,我的测试用例仅在从批处理文件中执行时才能按预期工作,而不是直接在命令行中键入。

最佳答案

实际上,msiexec确实返回错误代码,两个成功代码分别为0(成功)和3010(成功,需要重新启动)。也许 cmd.exe 在你的例子中做了一些不需要的魔法(比如在 msiexec 完成之前返回),但我在通过 VBScript 的 WScript.Shell Run (bWaitOnReturn = True)执行它时成功读取了 msiexec 错误代码。

尝试将以下内容放入 test.vbs 文件中,然后使用 cscript test.vbs 执行它:

Set WshShell = WScript.CreateObject("WScript.Shell")
MsgBox(WshShell.Run("msiexec /i myinstaller.msi", , true))

如果您点击取消,它应该弹出一个非零值。

关于windows-installer - 安装 MSI 时如何以编程方式检测成功或失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1708481/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com