共 43 页 第 21 页
击主界面左侧“资源”中的“原始文件”来添加,如上图。这样在安装程序执行时,该文件就被解压缩到临时目录下,并在安装程序正常关闭后自动删除。
2.选择外部文件的安装时段
然后,即可在某个屏幕中去添加相应代码。比如需要在安装之后但结束屏幕还未显示之前执行该程序。 具体操作是:点左侧“屏幕”中的“工程主题”→安装之后→编辑→操作,出现下图,接着添加程序:
把光标放在“02”后→按回车键→在“03”处输入“—执行程序”→按回车键→在“添加操作”中加入Shell.Execute→出现下图
第 22 页 共 43 页
注意临时目录的变量为%TempLaunchFolder%,假设该程序文件名为“Setup.exe”,那么可以把其中的“MyProg.exe”写成“Setup.exe”。即某个字符型变量与字符串组合可以用“_变量名..字符串”的格式来书写。仅仅添加这一条代码还不够,我们还要判断该程序是否执行完毕,才能继续下一步,比如再执行下一个外部程序什么的。这样就得用到循环语句,通过添加代码中的“repeat …until循环”来得到一个循环语句,再在循环内加入操作File.IsInUse,并将值赋给一个自定义变量,最后修改循环条件。如下图。
三、通过注册码获安装路径来替换
有时,安装程序不需手动选择安装目录,而是固定安装在电脑中的某个目录下,比如插件、汉化、破解等。那么该目录的取得可能就是要读取注册表内某个软件的安装路径来重新定义了。下面就讲一下如何制作。
首先我们要从注册表内取得安装路径,这个取得过程应该是安装程序启动时就需要执行了。点击主界面左侧“操作”中的“启动时”,添加操作Registry.GetValue,并将值赋给一个自定义变量,Registry.GetValue的写法中,注意SubKey子键名称中子键连接符是“\\\\”,如下图。
此时,上图中的变量ProductPath就得到了一个安装路径,稍做处理后就可以作为本安装程序的安装路径。但是由于该变量是在代码中定义的,不能用在安装包内文件属性中的“目标”中。“目标”中的变量必须是会话
共 43 页 第 23 页
变量,因此我们可将变量ProductPath再赋给某个会话变量。会话变量可以是Setup Factory 7.0自带的,也可以自定义。点击主界面左侧“设置”中的“会话变量”,再点击窗口下方的“添加”可添加自定义会话变量。如下图。
然后再到代码中将刚刚的变量ProductPath赋给会话变量,注意必须使用操作SessionVar.Set来给会话变量赋值,例如SessionVar.Set(“%AppFolder%”, ProductPath)。如下图。
如果安装程序需要将安装包内的文件分别安装到不同目录下,那么就必须将这些文件属性中的“目标”修改成不同的会话变量才可实现。
第 24 页 共 43 页
Setup Factory 7.0的常用功能差不多就这些,主要是看你怎么合理利用它自带的操作,再结合控制代码,就能编写出功能强大的安装程序了。
用Setup Factory 7.0制作安装程序问答篇
作者:Stanley Zhao 版权所有,如转载请注明出处
1.问:如何让所安装的软件在开机进入系统后自行启动?
答:在安装程序中将软件添加到注册表的启动项目中,或者添加到开始菜单的启动项目中,还有一种方法是作为系统的服务来启动。在这里介绍的是第一种方法,即在注册表的启动项目中加入软件。
我们可在Setup Factory 7.0制作安装程序过程中,在“安装之后”屏幕的On Preload操作中,加入Registry.SetValue操作代码,写法参照下图,注意Data中为启动软件的绝对路径,可用“_会话变量名..字符串”的格式来书写,也可用String.Concat操作将会话变量与字符串相加并赋值给一字符串变量,然后再将该变量写入此处。
2. 问:如何读写INI文件?
共 43 页 第 25 页
答:可在Setup Factory 7.0中的原始文件中添加INI文件,这样在安装程序执行时,INI文件就被解压缩到临时文件夹中了。然后在Setup Factory 7.0的某个阶段加入操作代码INIFile.GetValue,就可取得INI文件中某区段内的某个值了。如下图。
3. 问:如何在安装程序中实现典型、最小或自定义安装功能?
答:在很多论坛上都看到有人说Setup Factory 7.0做不了典型、最小和自定义安装的功能,我的意见是只有想不到、没有做不到。实际上通过Setup Factory 7.0的程序包功能,很容易就能实现。大家可以参照下面的范例来制作自己的安装程序。
首先,我们在菜单上工程中的程序包中添加设置。在跳出的窗口中点击添加,并输入相关信息,如下图。
添加完各项安装方式的程序包后,清单如下图。
然后再到每个安装文件属性的程序包选项卡中,选择所属的程序包。注意,软件必要文件必须全选,而各安装方式所需要的文件则选择相应的程序包即可。如下图。