ANT可以参数化InnoSetup脚本吗?
构建java应用程序(使用ANT脚本)的最后一步是使用Inno安装程序将所有内容打包到一个漂亮的windows安装程序中 我们现在正在升级ANT脚本,以生成32位和64位版本的应用程序。因此,我们的问题是:我们如何对Inno设置配置文件进行参数化,使其能够同时生成x86和x64版本(因此ANT脚本将其称为2x,其中一个参数表示x86/x64) 在Inno Setup config文件中,只有一行需要根据此参数进行更改:ANT可以参数化InnoSetup脚本吗?,ant,inno-setup,32bit-64bit,Ant,Inno Setup,32bit 64bit,构建java应用程序(使用ANT脚本)的最后一步是使用Inno安装程序将所有内容打包到一个漂亮的windows安装程序中 我们现在正在升级ANT脚本,以生成32位和64位版本的应用程序。因此,我们的问题是:我们如何对Inno设置配置文件进行参数化,使其能够同时生成x86和x64版本(因此ANT脚本将其称为2x,其中一个参数表示x86/x64) 在Inno Setup config文件中,只有一行需要根据此参数进行更改: ArchitecturesInstallIn64BitMode=x64 这
ArchitecturesInstallIn64BitMode=x64
这就是我们从ANT调用Inno Setup命令行的方式:
<exec executable="C:\Program Files (x86)\Inno Setup 5\iscc.exe">
<arg value="/cc" />
<arg value="${dir.create_setup}/CreateSetup.iss" />
</exec>
任何关于如何做到这一点的帮助/提示都将不胜感激
谢谢,
托马斯与过滤一起使用,也可用于其他动态值。您的iss配置文件模板有:
ArchitecturesInstallIn64BitMode=@32or64@
<filter token="32or64" value="${32or64}"/>
<copy file="foobar.iss" tofile="foobaz.iss" filtering="true" overwrite="true"/>
<exec executable="C:\Program Files (x86)\Inno Setup 5\iscc.exe">
<arg value="/cc" />
<arg value="foobaz.iss" />
</exec>
您的build.xml有:ArchitecturesInstallIn64BitMode=@32or64@
<filter token="32or64" value="${32or64}"/>
<copy file="foobar.iss" tofile="foobaz.iss" filtering="true" overwrite="true"/>
<exec executable="C:\Program Files (x86)\Inno Setup 5\iscc.exe">
<arg value="/cc" />
<arg value="foobaz.iss" />
</exec>
或
带筛选的复制任务将用userproperty 32or64的值替换令牌@32or64@,因此foobaz.iss有以下两种情况之一:ArchitecturesInstallIn64BitMode=x64
或
ArchitecturesInstallIn64BitMode=x86