即使在安装失败时也强制 Inno Setup 创建日志
Force Inno Setup to create log even on install failure
我有 Inno Setup 安装程序的应用程序。应用程序在后台 运行。这意味着,当我升级应用程序(在旧版本上安装新版本)时,我需要安装程序关闭此应用程序,因此所有文件都可以正常替换。
但似乎有时由于某些未知原因无法关闭应用程序。为了得到理由,我想记录它。问题是,由于安装程序无法替换文件,用户会收到错误消息,这会阻止安装程序完成。并且 Inno Setup 只有在成功完成安装后才会写入日志。
实际问题是 - 最后的陈述是否正确,或者是否有配置 Inno Setup 安装程序的方法,因此即使在安装中止时它也会创建日志文件?我有想法制作我自己的手动日志文件,它将在安装开始时创建,并在每次执行某些方法时更新,但我不想重新发明轮子。
And Inno Setup writes log only after successfully finishing installation.
不,那是不正确的。
日志会在安装程序启动时立即启动,甚至在它最终失败之前。
所以无论如何总是有一些日志(如果启用)。
安装程序 window 打开的那一刻,日志已经看起来像:
2016-05-13 12:30:45.712 Log opened. (Time zone: UTC+02:00)
2016-05-13 12:30:45.712 Setup version: Inno Setup version 5.5.9 (u)
2016-05-13 12:30:45.712 Original Setup EXE: C:\path\mysetup.exe
2016-05-13 12:30:45.712 Setup command line: /SL5="$C0338,134364,121344,C:\path\mysetup.exe" /SPAWNWND=0C5A /NOTIFYWND=0C08 /log=install.log
2016-05-13 12:30:45.712 Windows version: 10.0.10586 (NT platform: Yes)
2016-05-13 12:30:45.712 64-bit Windows: Yes
2016-05-13 12:30:45.712 Processor architecture: x64
2016-05-13 12:30:45.712 User privileges: Administrative
2016-05-13 12:30:45.712 64-bit install mode: No
2016-05-13 12:30:45.712 Created temporary directory: C:\Users\martin\AppData\Local\Temp\is-K3VS6.tmp
只有在以下情况下才会创建日志:
- 您使用
/log=c:\path\setup.log
开关请求它(正如您在我上面的日志中看到的那样)或
- 日志被强制使用
SetupLogging=yes
directive,在这种情况下,日志是在 %TEMP%\Setup Log yyyy-mm-dd #xxx.txt
中创建的。
我有 Inno Setup 安装程序的应用程序。应用程序在后台 运行。这意味着,当我升级应用程序(在旧版本上安装新版本)时,我需要安装程序关闭此应用程序,因此所有文件都可以正常替换。
但似乎有时由于某些未知原因无法关闭应用程序。为了得到理由,我想记录它。问题是,由于安装程序无法替换文件,用户会收到错误消息,这会阻止安装程序完成。并且 Inno Setup 只有在成功完成安装后才会写入日志。
实际问题是 - 最后的陈述是否正确,或者是否有配置 Inno Setup 安装程序的方法,因此即使在安装中止时它也会创建日志文件?我有想法制作我自己的手动日志文件,它将在安装开始时创建,并在每次执行某些方法时更新,但我不想重新发明轮子。
And Inno Setup writes log only after successfully finishing installation.
不,那是不正确的。
日志会在安装程序启动时立即启动,甚至在它最终失败之前。
所以无论如何总是有一些日志(如果启用)。
安装程序 window 打开的那一刻,日志已经看起来像:
2016-05-13 12:30:45.712 Log opened. (Time zone: UTC+02:00)
2016-05-13 12:30:45.712 Setup version: Inno Setup version 5.5.9 (u)
2016-05-13 12:30:45.712 Original Setup EXE: C:\path\mysetup.exe
2016-05-13 12:30:45.712 Setup command line: /SL5="$C0338,134364,121344,C:\path\mysetup.exe" /SPAWNWND=0C5A /NOTIFYWND=0C08 /log=install.log
2016-05-13 12:30:45.712 Windows version: 10.0.10586 (NT platform: Yes)
2016-05-13 12:30:45.712 64-bit Windows: Yes
2016-05-13 12:30:45.712 Processor architecture: x64
2016-05-13 12:30:45.712 User privileges: Administrative
2016-05-13 12:30:45.712 64-bit install mode: No
2016-05-13 12:30:45.712 Created temporary directory: C:\Users\martin\AppData\Local\Temp\is-K3VS6.tmp
只有在以下情况下才会创建日志:
- 您使用
/log=c:\path\setup.log
开关请求它(正如您在我上面的日志中看到的那样)或 - 日志被强制使用
SetupLogging=yes
directive,在这种情况下,日志是在%TEMP%\Setup Log yyyy-mm-dd #xxx.txt
中创建的。