我正在尝试使用Inno Setup创建一个Windows安装程序,该安装程序调用外部命令行应用程序。如果外部应用程序失败,我希望Inno安装程序中止,并显示一条消息,说明应该卸载并再次安装该应用程序。甚至更好:回滚安装。
我计划这样做的方式(如果你有更好的想法,让我知道)是从外部应用程序写入日志文件,如果发生任何错误。 Inno设置应该在调用外部应用程序后检查日志文件是否包含字符串“ok”。
我这样打电话给我的外部应用程序:
[Run]
Filename: "{app}\exec.exe"; Parameters: "{app}"; AfterInstall: checkLog
我打算做一些类似的事情:
[Code]
procedure checkLog;
begin
end;
所以我的问题是:我如何从日志中检索字符串并检查它是否包含字符串“ok”? (路径可以是过程的参数)如何使用消息中止安装或回滚安装?
答案 0 :(得分:1)
使用
function LoadStringFromFile(const FileName: String; var S: AnsiString): Boolean;
并验证从文件中读取的字符串是否具有OK