setupfactory70中文版教程.docx
- 文档编号:10942505
- 上传时间:2023-02-23
- 格式:DOCX
- 页数:64
- 大小:2.21MB
setupfactory70中文版教程.docx
《setupfactory70中文版教程.docx》由会员分享,可在线阅读,更多相关《setupfactory70中文版教程.docx(64页珍藏版)》请在冰豆网上搜索。
setupfactory70中文版教程
SetupFactory7.0教程
用SetupFactory7.0制作安装程序《基础篇》
我们希望制作一个精美的安装程序来发布自己的软件。
在这里推荐使用SetupFactory7.0,这是一款强大的安装程序制作工具。
即使你对安装制作不了解,也可以生成专业性质的安装程序。
可建立快捷方式,也可直接在Windows系统的注册表加入内容,还能在Win.ini和System.ini内加入设定值,更可以建立反安装选项等等。
它内附的向导可以一步步的带领您做出漂亮又专业的安装程序。
我在这里简单介绍一下如何使用SetupFactory7.0来制作一个安装程序。
打开软件后,默认会跳出一个工程向导的界面,如上图。
此时可点创建来新建一个工程,或是按Esc键退出工程向导。
由于在首次安装完SetupFactory7.0后,默认语言为英文(可能会根据软件版本而不同),这样在制作安装程序时很不方便,因此需要先将默认语言改为中文简体。
所以在这里我们先按Esc键退出工程向导,直接进入软件主界面。
如下图。
在主界面菜单的编辑中选择“参数选择”,在出现的窗口中打开Document并点击Languages,然后在窗口右侧选中Chinese(Simplified),再点击下方的“设为默认”,最后确定即可。
如下图。
现在我们可以开始制作安装程序了。
步骤一、添加程序文件
在菜单的工程中选择“添加文件”,或在主界面左侧的文件中选择“添加文件”。
如下图所示,如果添加多个文件,则可选择“此文件夹中的所有文件”,如果有子文件夹,则选第三项“此文件夹及其子文件夹中的所有文件”。
然后点击添加按钮。
文件加入后,即如下图所示。
步骤二、设置安装路径及快捷方式
用鼠标右键单击某一文件(也可选中多个文件对其编辑),选择“文件属性”,可修改相应设置。
如下图所示,目标中默认为%AppFolder%,该变量表示安装路径,可以修改成其他自带变量或自定义变量(如:
C:
\ProgramFiles\MicrosoftOffice\OFFICE11\Officemb)。
如果该文件为可执行文件(如EXE文件等),那么默认会在开始菜单建立相应的快捷方式。
点击上图中的快捷方式,即可出现相关设置。
如果不需要快捷方式,可取消相关项目的选择。
如下图。
最后点确定按钮。
若不同的文件安装不同的路径,可重复操作步骤一、步骤二。
步骤三、设置软件信息及卸载
在左侧设置中点击“会话变量”,如下图所示,这些变量是SetupFactory7.0自带的变量,选中左侧内容,可修改右部的软件信息。
最后点确定。
新建安装程序默认会创建卸载,如果你的软件不需要卸载,那么点击主界面左侧卸载中的“设置”,可关闭“创建卸载”。
如下图。
步骤四、制作安装过程中的屏幕
屏幕分三部分,安装前、安装中、安装后。
点击主界面左侧屏幕中的工程主题,在跳出的窗口下方选择工程主题可改变安装屏幕的样式。
①点击上图的“安装之前”,可在窗口左侧添加或删除相应的屏幕。
如下图。
选中左侧某一屏幕(如“许可协议”)后,点窗口下方的编辑按钮,即可对该屏幕进行编辑。
如下图。
在“属性”中则可修改屏幕标题和按钮等。
如下图。
在“操作”中则可对该屏幕事件进行编程。
如下图。
通过窗口底部的“添加操作”和“添加代码”,可加入相应的代码来实现所需功能。
同样,对“安装之前”对话框中的“用户信息”也可进行设置。
②在“安装之时”屏幕中,若取消“安装期间显示进程屏幕”的选择,该屏幕在安装时将不再出现。
如下图。
如果只是想在安装过程中不显示复制的文件名称及其路径,那么点击“编辑”按钮,并取消“显示状态文本一”的选择。
如下图。
③在“安装之后”中,可编辑安装完毕后的屏幕界面。
如下图。
上述过程完成后,一个简单的安装程序就可以发布了。
步骤五、生成安装文件
点击菜单发布中的构建,如下图所示,默认选择“Web(单个文件)”即可,再点击下一步。
确定输出安装程序的文件夹及安装程序文件名称,如下图。
然后点击“构建”按钮。
现在我们就可以测试做好的安装程序了。
别忘了将刚刚的SetupFactory7.0工程保存到电脑上。
本人把文件并命名为“超级查询器.sf7”。
汉化新世纪网友ddstrg收据了原作者其他文章以及论坛相关内容整理成CHM教学文件,方便大家学习,特此感谢!
点击下载
用SetupFactory7.0制作安装程序《进阶篇》
作者:
StanleyZhao版权所有,如转载请注明出处
在基础篇里面,我们简单地讲了一下安装程序的制作过程,但是如果碰到一个稍微复杂点的安装程序,比如需要对注册表进行编辑,或是安装过程中需要执行外部文件等,那么又该如何处理呢?
大家不要着急,看完进阶篇后你就知道怎么办了。
既然要处理各种复杂的事件,那当然是离不开编程。
SetupFactory7.0也提供了自己的语言来编写代码,主要是在“屏幕”和“操作”中。
打开上次保存的文件“超级查询器.sf7”,看主界面左侧的“操作”,共有4项:
启动时、预安装时、进行安装时、关机时。
如下图。
点击“启动时”,即可编写安装程序启动时需要处理的事件代码。
如下图。
点击窗口下方的“添加操作”,可以加入SetupFactory7.0所提供的事件代码(如添加“输入密码的对话框”等)。
如下图。
一、设置安全性
1.设置“输入密码的对话框”
欲添加一个要求输入密码的对话框,可选择Dialog类别中的Input操作,如下图。
点击下一步后,出现下图:
在该操作的各项目中输入相应数据,成下图。
点击完成后,该操作就以代码的形式出现在窗口中了,如下图。
接着可以添加条件语句来判断密码是否有效。
点击窗口下方的“添加代码”,并选择“if语句(不相等)”。
如下图。
添加后,在窗口中多了几段代码,如下图。
这时,需要按它提供的格式进行修改这些代码。
成下图。
我们需要在if语句内加入密码无效后的操作,即提示密码出错和退出安装程序。
点击“添加操作”后,选择Dialog类别中的Message操作以及Application类别中的Exit操作,修改完成后代码如下图所示。
这样就实现了一个简单的密码登录功能,稍微有些缺陷的是密码输入时是以明文显示。
不过我们这里讲述的是如何通过添加操作和代码来实现相应功能,否则我们完全可以在安装之前的屏幕中通过添加验证序列号来实现此功能。
那么如何实现验证序列号的功能呢?
2.生成序列号
首先我们要生成属于安装程序的序列号。
在菜单工程中点击序列号,出现如下图所示窗口。
选中列表List1,点击编辑,并选择命令中的生成。
如下图。
然后输入需要的序列号数量以及格式,如下图。
确定后,即可生成所需的序列号,如下图。
可将这些序列号全选后导出到一个文本文件中。
最后点确定。
3.添加验证序列号屏幕
再到“安装之前”的屏幕中添加上“验证序列号”屏幕。
如下图。
这样,安装过程中验证序列号的功能就实现了。
4.设置“到期”
在菜单的“工程”中点击“到期”,并启用相关设置后,安装程序还能具备使用到期功能。
如下图。
按上图中的设置制作的安装程序,如果执行安装程序的电脑上日期不在此范围之内,那么就会提示如下画面。
不过,到期功能并不太实用,因为只要将电脑上的日期改成安装程序制作日期就能继续使用了。
二、执行外部文件
有时候在安装过程中或安装后需要执行其中一个程序,比如破解程序、汉化程序,或是一个驱动什么的东东,而这个程序可能不需要安装到电脑中,只需要在安装中被执行一次就OK了。
那么我们就可以这么做。
1.添加文件
由于该程序不需要随着其他文件一起安装到电脑中,所以不能通过添加文件来加入到安装包中,而是点击主界面左侧“资源”中的“原始文件”来添加,如上图。
这样在安装程序执行时,该文件就被解压缩到临时目录下,并在安装程序正常关闭后自动删除。
2.选择外部文件的安装时段
然后,即可在某个屏幕中去添加相应代码。
比如需要在安装之后但结束屏幕还未显示之前执行该程序。
具体操作是:
点左侧“屏幕”中的“工程主题”→安装之后→编辑→操作,出现下图,接着添加程序:
把光标放在“02”后→按回车键→在“03”处输入“—执行程序”→按回车键→在“添加操作”中加入Shell.Execute→出现下图
注意临时目录的变量为%TempLaunchFolder%,假设该程序文件名为“Setup.exe”,那么可以把其中的“MyProg.exe”写成“Setup.exe”。
即某个字符型变量与字符串组合可以用“_变量名..字符串”的格式来书写。
仅仅添加这一条代码还不够,我们还要判断该程序是否执行完毕,才能继续下一步,比如再执行下一个外部程序什么的。
这样就得用到循环语句,通过添加代码中的“repeat…until循环”来得到一个循环语句,再在循环内加入操作File.IsInUse,并将值赋给一个自定义变量,最后修改循环条件。
如下图。
三、通过注册码获安装路径来替换
有时,安装程序不需手动选择安装目录,而是固定安装在电脑中的某个目录下,比如插件、汉化、破解等。
那么该目录的取得可能就是要读取注册表内某个软件的安装路径来重新定义了。
下面就讲一下如何制作。
首先我们要从注册表内取得安装路径,这个取得过程应该是安装程序启动时就需要执行了。
点击主界面左侧“操作”中的“启动时”,添加操作Registry.GetValue,并将值赋给一个自定义变量,Registry.GetValue的写法中,注意SubKey子键名称中子键连接符是“\\”,如下图。
此时,上图中的变量ProductPath就得到了一个安装路径,稍做处理后就可以作为本安装程序的安装路径。
但是由于该变量是在代码中定义的,不能用在安装包内文件属性中的“目标”中。
“目标”中的变量必须是会话变量,因此我们可将变量ProductPath再赋给某个会话变量。
会话变量可以是SetupFactory7.0自带的,也可以自定义。
点击主界面左侧“设置”中的“会话变量”,再点击窗口下方的“添加”可添加自定义会话变量。
如下图。
然后再到代码中将刚刚的变量ProductPath赋给会话变量,注意必须使用操作SessionVar.Set来给会话变量赋值,例如SessionVar.Set(“%AppFolder%”,ProductPath)。
如下图。
如果安装程序需要将安装包内的文件分别安装到不同目录下,那么就必须将这些文件属性中的“目标”修改成不同的会话变量才可实现。
SetupFactory7.0的常用功能差不多就这些,主要是看你怎么合理利用它自带的操作,再结合控制代码,就能编写出功能强大的安装程序了。
用SetupFactory7.0制作安装程序问答篇
作者:
StanleyZhao版权所有,如转载请注明出处
1.问:
如何让所安装的软件在开机进入系统后自行启动?
答:
在安装程序中将软件添加到注册表的启动项目中,或者添加到开始菜单的启动项目中,还有一种方法是作为系统的服务来启动。
在这里介绍的是第一种方法,即在注册表的启动项目中加入软件。
我们可在SetupFactory7.0制作安装程序过程中,在“安装之后”屏幕的OnPreload操作中,加入Registry.SetValue操作代码,写法参照下图,注意Data中为启动软件的绝对路径,可用“_会话变量名..字符串”的格式来书写,也可用String.Concat操作将会话变量与字符串相加并赋值给一字符串变量,然后再将该变量写入此处。
2. 问:
如何读写INI文件?
答:
可在SetupFactory7.0中的原始文件中添加INI文件,这样在安装程序执行时,INI文件就被解压缩到临时文件夹中了。
然后在SetupFactory7.0的某个阶段加入操作代码INIFile.GetValue,就可取得INI文件中某区段内的某个值了。
如下图。
3. 问:
如何在安装程序中实现典型、最小或自定义安装功能?
答:
在很多论坛上都看到有人说SetupFactory7.0做不了典型、最小和自定义安装的功能,我的意见是只有想不到、没有做不到。
实际上通过SetupFactory7.0的程序包功能,很容易就能实现。
大家可以参照下面的范例来制作自己的安装程序。
首先,我们在菜单上工程中的程序包中添加设置。
在跳出的窗口中点击添加,并输入相关信息,如下图。
添加完各项安装方式的程序包后,清单如下图。
然后再到每个安装文件属性的程序包选项卡中,选择所属的程序包。
注意,软件必要文件必须全选,而各安装方式所需要的文件则选择相应的程序包即可。
如下图。
接下来,我们就要开始做屏幕了。
在“安装之前”中添加一个单选按钮的屏幕,并将屏幕上的单选按钮进行设置,如下图。
这样设置后,在安装时就可以进行安装方式的选择了。
但是我们如果选择了自定义安装,则还需要一个自定义安装的选择项,这个选择项应是可多选的,因此可再添加一个检查框屏幕,并做如下图所示的设置。
这两个屏幕添加完成后,修改其屏幕ID,如下图。
现在我们要开始在这两个屏幕中加入相应的代码来实现不同的安装了。
打开“安装方式选择”屏幕,先记下三个单选按钮的ID为:
CTRL_RADIO_BUTTON_01、CTRL_RADIO_BUTTON_02、CTRL_RADIO_BUTTON_03。
这个选择的结果会存储在会话变量%RadioSelection%中。
然后我们在操作的OnNext中开始加入代码。
首先是需要将每个程序包设置为不安装,因为假如在安装中选择某项安装方式后点了下一步,但是想修改安装方式又返回到这个屏幕,这样在重新选择了另外一个安装方式后,如果没有将原来选择的安装方式设置为不安装的话,将导致对应的两个程序包都被执行了设置安装的代码。
因此必须在点了下一步的代码中先做程序包的初始化。
设置一个程序包不安装的写法是:
SetupData.SetPackageProperties(“程序包ID”,{Install=false})。
然后我们就可以写条件判断语句了,不过先得将存有单选按钮结果的会话变量处理后赋给另一个新变量,因为会话变量不能直接被使用在条件等式中。
另外,如果选择“典型安装”或“最小安装”,应该要跳过“自定义安装选择”屏幕,而直接转到“准备安装”屏幕才对,所以我们需要用到Screen.Jump(“屏幕ID”)这个操作。
该屏幕OnNext操作的所有代码如下图。
我们再打开“自定义安装选择”屏幕来加入代码。
在OnNext操作中加入条件判断语句,根据三个复选框的选择结果来分别对各自的程序包设置安装状态。
另外,如果三个自定义安装都不选,就应判定操作错误,因此还需添加相应的代码。
如下图。
以上步骤完成后,就可以构建一个具有典型、最小和自定义安装功能的安装程序了。
以上是本人在使用SetupFactory7.0近一年后的一点点心得。
软件的功能当然不止于此,但因本人水平有限,只能介绍这么多了,希望能对大家做出一个自己满意的安装程序有所帮助。
SetupFactory7.0使用一例,插件安装程序
实例说明:
本实例为TMPGEncXpress4.0+AdobePremiere插件安装程序。
AdobePremiere插件可以在AdobePremiere输出电影时,TMPGEncXpress4.0可以直接渲染出来。
那就不要中间转换一次电影格式。
那可以减小转换时间。
1.本安装程序实用于安装的软件能单独运行,但软件又能做为第三方软件的插件使用。
2.安装程序自动获取(从注册表中)第三方软件的插件目录。
3.安装程序能显示第三方软件的插件目录路径和能修改所显示的路径。
4.安装程序在“准备安装”屏幕上会显示所设置的信息。
制作
文件设置
1。
添加常规文件。
2.在设置为一个单独程序包。
(我这里设置程序包ID为Adobe)如图
添加插件文件时,选中添加插件文件左击选中文件属性,在常规对话框中的目标中安装到变量设置为“%AppFolder1%”以下面设置时使用。
在程序包对话框中选中为前设置的“Adobe”,使添加插件文件为Adobe程序包的子文件。
界面设置
1.在屏幕主题里添加一个“检查框”和“选择安装文件夹”
2.在双击“检查框”屏幕中设置对话框中的“顶端,底部”信息改成自己要显示的文本。
复选框中的设置如图
在结果变量中的“check01”不能任意修改,要修改的话。
在脚本里的设置参数也要修改。
3.在双击“选择安装文件夹”编辑属性对话框
屏幕ID(这是设置为AdobePremiere插件目录)
窗口标题(这是设置为%ProductName%安装程序-AdobePremiere插件目录)
子标题文本(这是设置为您AdobePremiere插件目录在何处?
)
接下来就要设置的变量参数了。
选到设置对话框,设置“默认文件夹”和“将结果存储在会话变量中”变量都设为“%AppFolder1%”,另提示对话框(这是设置为将AdobePremiere插件目录安装到:
)
设置好的屏幕。
如图
4.在准备安装屏幕设置对话框中文本中添加两个变量“%AppFolder1%,%AppFolder2%”以下面脚本使用。
%AppFolder1%为显示AdobePremiere插件目录实际位置
%AppFolder2%为显示显示“AdobePremiere插件目录”字符串
位置如图
脚本设置
1。
在“检查框”对话框中的OnPreload中设置脚本如图
2。
在“选择安装文件夹”屏幕的OnPreload对话框设置代码,设置从注册表中获取AdobePremiere插件目录实际位置
t=Registry.GetValue(HKEY_LOCAL_MACHINE,“SOFTWARE\\Adobe\\Premiere\\CurrentVersion”,“Plug-InsDir”,true);
SessionVar.Set(“%AppFolder1%”,t);
在OnNext添加事件(如上图)
3.在“选择快捷方式”屏幕的OnBack对话框设置代码
判断check01事件真假
if(check01)then
check01事件真
返回到上个屏幕
Screen.Previous();
else
check01事件假
返回到“选择安装文件夹”屏幕
Screen.Jump(“选择安装文件夹”);
end
另外所有的屏幕中的OnBack的事件都把Screen.Back();改成Screen.Previous();。
这样主要在有时用户设置要“准备安装”屏幕时。
又想修改安装设置,以保证在撤消时屏幕显示不出错。
说明:
变量%AppFolder1%,%AppFolder2%”的显示效果在“准备安装”屏幕,如安装AdobePremiere插件则显示如图(红线处),不安装就为空白。
最后你可以制作安装程序了。
SetupFactory7.0优点
1.单独的屏幕选择和单独脚本编辑。
可以不用代码也能制作简单的安装程序,也可以用代码制作复杂的安装程序。
2.屏幕可以使重复使用,这是我测试过许多安装制作没有的功能或只能单一的使用屏幕。
3.自动备件功能强大。
SetupFactory7.0缺点
1.压缩不是很高。
2.创建特殊的快捷方式有点麻烦。
3.屏幕不能过去复杂的修改设计。
ddstrg
程序包的作用是让用户选择安装或不安装某些组件,比如插件、帮助文件、语言文件等等,很方便。
可以设置程序包的初始状态(选中或未选中),而不必在代码里指定,如图所示:
在“工程→程序包”处设置好程序包之后,一定要手动地添加一个“选择程序包”的屏幕,否则你设置的程序包就是没有用的。
在“选择程序包”屏幕上要把程序包添加到左侧窗格,才能让它显示出来:
SetupFactory7注册表实例,新手教学
群里有人问SF7的注册表操作,很基础的问题,我就写了一个例子,主要靠点击各个按钮来进行控制。
主要有:
创建键,删除键,创建键值,删除键值,读取注册表信息,判断是否有键值等
if(e_MsgID==MSGID_CLICKED)then
--点击了控件...
if(e_CtrlID==CTRL_BUTTON_01)then
--在这里插入按钮控制代码,第一个按钮
Registry.CreateKey(HKEY_LOCAL_MACHINE,"Software\\Build");
Dialog.Message("创建","您创建了一个注册表项!
",MB_OK,MB_ICONNONE);
end
if(e_CtrlID==CTRL_BUTTON_02)then
--在这里插入按钮控制代码,第二个按钮
Registry.DeleteKey(HKEY_LOCAL_MACHINE,"Software\\Build");
Dialog.Message("删除","您删除了一个注册表项!
",MB_OK,MB_ICONNONE);
end
if(e_CtrlID==CTRL_BUTTON_03)then
--在这里插入按钮控制代码,第三个按钮
Registry.SetValue(HKEY_LOCAL_MACHINE,"Software\\Build","Key1","字符串值",REG_SZ);
Registry.SetValue(HKEY_LOCAL_MACHINE,"Software\\Build","Key2","11001112",REG_BINARY);
Dialog.Message("创建键值","您创建了两个个注册表键值!
",MB_OK,MB_ICONNONE);
end
if(e_CtrlID==CTRL_BUTTON_04)then
--在这里插入按钮控制代码,第四个按钮
Registry.DeleteValue(HKEY_LOCAL_MACHINE,"Software\\Build","Key1");
Dialog.Message("删除","您删除了一个注册表键值!
",MB_OK,MB_ICONNONE);
end
if(e_CtrlID==CTRL_BUTTON_05)then
--在这里插入按钮控制代码,第四个按钮
RKEY1=Registry.GetValue(HKEY_LOCAL_MACHINE,"Software\\Build","Key1",true);
RKEY2=Registry.GetValue(HKEY_LOCAL_MACHINE,"Software\\Build","Key2",true);
SessionVar.Set("%PATCH1%",RKEY1);
SessionVar.Set("%PATCH2%",RKEY2);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- setupfactory70 中文版 教程
![提示](https://static.bdocx.com/images/bang_tan.gif)