安装程序 – InnoSetup:在[代码]部分获取AppName

前端之家收集整理的这篇文章主要介绍了安装程序 – InnoSetup:在[代码]部分获取AppName前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用 InnoSetup创建一个安装程序,并在[代码]部分中编写一些自定义处理程序.在其中一个处理程序中,我希望能够检索[Setup]部分中定义的AppName(或潜在的其他参数的值)的值.有办法让我这样做吗?我看过 documentation,但我没有发现任何让我这样做的东西.我们的InnoSetup文件实际上是由我们的构建过程生成的,它将我们所有程序之间共同的片段拼接在一起,这是程序特定的,所以在每个程序的代码中定义常量是不方便的.有没有办法这样做?

我正在寻找类似的东西

MyString := ExpandConstant('{AppName}');

除了{AppName}不是定义的常量.有没有办法查询[Setup]部分中定义的参数?

解决方法

这是一个构建时常数,而不是安装时间值.所以你可以使用 Inno Setup Preprocessor加载项来定义这样的常量. (您可以通过 QuickStart pack轻松安装).

定义常数:

#define AppName "Excellent Foo App"

在[设置]中使用常量:

AppName={#AppName}

而在Pascal代码中,我并不完全确定语法,而是类似于:

MyString := {#AppName}

更新:我意识到我的一个脚本使用{#emit SetupSetting(“AppId”)}更容易. Brian’s solution也发现了这种方法,而且更好.

猜你在找的Delphi相关文章