如何将参数从 Java FX Ant 任务传递到 Inno Setup?
How to pass parameters from Java FX Ant task to Inno Setup?
我是JavaFX的新手,对Ant只有一些基础知识。目前我正在学习如何使用 FX Ant 任务来部署应用程序。 编辑: 通过使用 <fx:deploy nativeBundles="exe" ../>
Ant 自动使用 Inno Setup 创建扩展名为 .exe
的安装文件。
由于我们公司有一些关联公司,所以我们的大部分应用程序都需要为每个关联公司部署一次。这是因为创建了一些 Windows 注册表条目,它们应该看起来像这样(不是我的想法,管理层希望它像这样!):
"HKCU\Software\affiliated company name\AppName\Settings"
现在我想知道,是否可以将参数从我的 build.xml
传递到 .iss
以动态插入粗体部分。
我找到了 this 问题,其中传递
/DMyParameterName=MyValue
建议使用 Inno Setup 编译器 (ISC),但我不知道如何从 build.xml
执行此操作,因为我找不到任何对 ISC 的直接调用。
希望您能理解我的问题(英语不是我的母语)。如果您需要更多信息来帮助我,请随时询问,我会尽快添加它们。
Java FX 不允许您将任何附加参数传递给 ISCC.exe
。
至少根据 OpenJFX 源代码:
//run candle
ProcessBuilder pb = new ProcessBuilder(
TOOL_INNO_SETUP_COMPILER_EXECUTABLE.fetchFrom(params),
"/o"+outdir.getAbsolutePath(),
getConfig_ExeProjectFile(params).getAbsolutePath());
pb = pb.directory(EXE_IMAGE_DIR.fetchFrom(params));
IOUtils.exec(pb, VERBOSE.fetchFrom(params));
您可以设置环境变量而不是参数,并使用此语法使用它:
{%VARNAME}
请参阅 Inno Setup Constants 文档。
对于那些寻找纯 Ant 解决方案(没有 Java FX)的人:
Inno Setup 编译器 (ISCC.exe
) 是一个普通的控制台可执行文件。
你运行使用基本的编译器Exec Ant task:
<project>
<exec executable="ISCC.exe">
<arg value="Example1.iss"/>
<arg value="/DMyParameterName=MyValue"/>
</exec>
</project>
我是JavaFX的新手,对Ant只有一些基础知识。目前我正在学习如何使用 FX Ant 任务来部署应用程序。 编辑: 通过使用 <fx:deploy nativeBundles="exe" ../>
Ant 自动使用 Inno Setup 创建扩展名为 .exe
的安装文件。
由于我们公司有一些关联公司,所以我们的大部分应用程序都需要为每个关联公司部署一次。这是因为创建了一些 Windows 注册表条目,它们应该看起来像这样(不是我的想法,管理层希望它像这样!):
"HKCU\Software\affiliated company name\AppName\Settings"
现在我想知道,是否可以将参数从我的 build.xml
传递到 .iss
以动态插入粗体部分。
我找到了 this 问题,其中传递
/DMyParameterName=MyValue
建议使用 Inno Setup 编译器 (ISC),但我不知道如何从 build.xml
执行此操作,因为我找不到任何对 ISC 的直接调用。
希望您能理解我的问题(英语不是我的母语)。如果您需要更多信息来帮助我,请随时询问,我会尽快添加它们。
Java FX 不允许您将任何附加参数传递给 ISCC.exe
。
至少根据 OpenJFX 源代码:
//run candle
ProcessBuilder pb = new ProcessBuilder(
TOOL_INNO_SETUP_COMPILER_EXECUTABLE.fetchFrom(params),
"/o"+outdir.getAbsolutePath(),
getConfig_ExeProjectFile(params).getAbsolutePath());
pb = pb.directory(EXE_IMAGE_DIR.fetchFrom(params));
IOUtils.exec(pb, VERBOSE.fetchFrom(params));
您可以设置环境变量而不是参数,并使用此语法使用它:
{%VARNAME}
请参阅 Inno Setup Constants 文档。
对于那些寻找纯 Ant 解决方案(没有 Java FX)的人:
Inno Setup 编译器 (ISCC.exe
) 是一个普通的控制台可执行文件。
你运行使用基本的编译器Exec Ant task:
<project>
<exec executable="ISCC.exe">
<arg value="Example1.iss"/>
<arg value="/DMyParameterName=MyValue"/>
</exec>
</project>