如何在 installshield 向导完成屏幕上显示安装程序日志文件?

How to show installer log file on installshield wizard finish screen?

我正在使用以下命令从命令提示符启动我的安装程序:

msiexec /i "myproduct.msi" /l*v install.log

由于我使用的是 /l*v 选项,因此安装程序会自动在完成屏幕上向我显示一个复选框,其标签为 "Show the Windows Installer log"。

现在我选中复选框,然后单击完成按钮,但它不会打开在安装过程中创建的 install.log 文件。我可以在启动安装的目录的根目录中看到 install.log 文件。为什么日志文件打不开?

我终于确定下来了。实际上从一开始我就觉得安装程序日志文件的显示会自行发生。我之所以有这种印象,是因为当你将 /l*v install.log 参数添加到 msiexec 命令时,你开始看到 "Show the Windows Installer log" 复选框本身而无需进行任何显式编码。

复选框的可见 属性 由名为 ISSHOWMSILOG 的预先存在的 public 属性 管理,并且它已经融入基本 MSI 安装程序项目模板中。现在,如果我们希望在选中复选框时真正显示日志文件,则必须调用显式自定义操作以在单击“完成”按钮时显示该文件:

事件类型DoAction

事件调用条件MsiLogFileLocation And (ISSHOWMSILOG="1") And NOT ISENABLEDWUSFINISHDIALOG

事件操作ShowMsiLog

在我对我的基本 MSI 项目进行此更改后,单击 Finish 按钮时只有日志文件开始显示。