Setup Factory9安装包制作,实现过程脚本修改配置文件内容
描述:
我们在使用Setup Factory制作安装包时,简单的安装包实际上只是文件的复制粘贴操作,但我们会经常使用到安装过程中,进行指定文件的配置,需要在安装的时候实现安装环境中指定文件的内容修改,这时候我们则需要用脚本去实现。
安装包制作的过程这里就不做阐述了,我们直接来看怎么实现安装过程文件的修改配置。
此处我们选中操作,选择指定节点去编写脚本,示例是在安装之后去修改指定脚本内容的,如下图:
我们可以看到图中的脚本,看一下脚本代码:
--读取配置文件转成文本内容
properties = TextFile.ReadToString("%AppFolder%\\deploy\\eas.ear\\META-INF\\application.xml");
--从内容中找到指定属性
target_index = String.Find(properties, "<module><web><web-uri>XXX</web-uri><context-root>/XXX</context-root></web></module>", 1, true);
--若属性不存在,则添加属性
if(target_index == -1) then
--加载XML
XML.Load(SessionVar.Expand("%AppFolder%\\deploy\\eas.ear\\META-INF\\application.xml"));
--获取加载的XML
strXML = XML.GetXML();
--获取加载的XML中的指定节点
strAddress = XML.GetElementXML("application/module:1");
--往加载的XML指定节点后添加节点
XML.InsertXML("application/module:1", "<module><web><web-uri>XXX</web-uri><context-root>/XXX</context-root></web></module>", XML.INSERT_BEFORE);
--保存XML
XML.Save(SessionVar.Expand("%AppFolder%\\deploy\\eas.ear\\META-INF\\application.xml"));
end
如上述代码,是讲述了如何对XML文件的操作,代码很简单,不懂的也可以看setup factory的产品说明文档,文档是纯英文的。
下面,我们再看一个普通文本文件的修改:
--读取配置文件转成文本内容
properties = TextFile.ReadToString("%AppFolder%\\properties\\application.properties");
--从内容中找到指定属性
target_index = String.Find(properties, "isLoading=true", 1, true);
--若属性不存在,则添加属性
if(target_index == -1) then
TextFile.WriteFromString(
SessionVar.Expand("%AppFolder%\\properties\\application.properties"),
"isLoading=true",
true);
end
如上,是对选择的目录下的properties\application.properties配置文件进行操作,判断是都存在isLoading=true属性,若不存在则在文件最下方添加该属性,大家可以按照自己的需求去添加想要的内容即可,基本都可以满足。
在使用Setup Factory中可查看它的API文档,里面有很多使用方式
可惜的是Setup Factory生成的安装包只支持.exe,所以不支持linux操作系统。