Inno setup 如何从外部文件夹引用文件,使其';安装程序包中还包含哪些内容?

Inno setup 如何从外部文件夹引用文件,使其';安装程序包中还包含哪些内容?,inno-setup,Inno Setup,以下是我想做的: Source:{%QTDIR}/bin/QtCore4.dll;DestDir:{app};标志:忽略版本 它没有展开QTDIR环境变量,并给我一个错误。如果我添加external标志,它可以编译并正常工作,但我确实需要将文件编译到安装程序包中。有什么办法可以做到这一点吗?也许你可以使用ISPP\define 例如: #define MYCONSTANT GetEnv("USERPROFILE") [Files] Source: "{#MYCONSTANT}\myfile.t

以下是我想做的:

Source:{%QTDIR}/bin/QtCore4.dll;DestDir:{app};标志:忽略版本


它没有展开QTDIR环境变量,并给我一个错误。如果我添加
external
标志,它可以编译并正常工作,但我确实需要将文件编译到安装程序包中。有什么办法可以做到这一点吗?

也许你可以使用
ISPP\define

例如:

#define MYCONSTANT GetEnv("USERPROFILE")

[Files]
Source: "{#MYCONSTANT}\myfile.txt"; DestDir: {app}; Flags: ignoreversion
我在这里链接到
UserProfile
作为示例,但是如果将QTDIR设置为系统常量
%QTDIR%
,则可以在这里定义QTDIR。 可能:

#define QTDIRCONSTANT GetEnv("QTDIR")

[Files]
Source: "{#QTDIRCONSTANT}\bin\QtCore4.dll"; DestDir: {app}; Flags: ignoreversion

仅供参考:
{%xxx}
是在运行时展开的(这就是为什么当您使用
外部
时它“起作用”),而
{{xxx}
(例如在您的例子中,
{GetEnv(“QTDIR”)}
是在编译时展开的。@Miral:谢谢,我不知道。