打包教程文档SetupFactory7.docx
《打包教程文档SetupFactory7.docx》由会员分享,可在线阅读,更多相关《打包教程文档SetupFactory7.docx(17页珍藏版)》请在冰豆网上搜索。
打包教程文档SetupFactory7
可视化分析个人版WAPE打包教程
打包工具
SetupFactory7
打包过程
1新建工程
选择将要打包的文件目录路径
选择一个工程主题
勾选中文语言
按照步骤进行下一步,直至完成,被打包的文件将自动填充到项目里。
2点击“屏幕”—>工程主题—>安装之前—>编辑“许可协议”
将下面内容复制到许可协议中:
即表示同意接受协议各项条件的约束。
如果用户
不同意协议的条件,请不要使用本软件产品。
二、软件产品保护条款
1)本软件产品之著作权及其它知识产权等相关权利或利益(包括但不限于现已取得或未来可取得之著作权、专利权、商标权、
营业秘密等)皆为北京航天理想科技股份有限公司所有。
本软件产品受中华人民共和国版权法及国际版权条约和其他知识产权法及条约的保护
。
用户仅获得本软件产品的非排他性使用权。
2)用户不得:
删除本软件及其他副本上一切关于版权的信息;对本软件进行反向工程,如反汇编、反编译等;
3)本软件产品以现状方式提供,北京航天理想科技股份有限公司不保证本软件产品能够或不能够完全满足用户需求,在用户手册、帮助
文件、使用说明书等软件文档中的介绍性内容仅供用户参考,不得理解为对用户所做的任何承诺。
北京航天理想科技股份有限公司保留对软件
版本进行升级,对功能、内容、结构、界面、运行方式等进行修改或自动更新的权利。
4)为了更好地服务于用户,或为了向用户提供具有个性的信息内容的需要,本软件产品可能会收集、传播某些信息,但北京航天理想科技股份有限公司承诺不向XX的第三方提供此类信息,以保护用户隐私。
5)使用本软件产品由用户自己承担风险,在适用法律允许的最大范围内,北京航天理想科技股份有限公司在任何情况下不就因使用或不
能使用本软件产品所发生的特殊的、意外的、非直接或间接的损失承担赔偿责任。
即使已事先被告知该损害发生的可能性。
6)北京航天理想科技股份有限公司定义的信息内容包括:
文字、软件、声音;本公司为用户提供的商业信息,所有这些内容受版权、商
标权、和其它知识产权和所有权法律的保护。
所以,用户只能在本公司授权下才能使用这些内容,而不能擅自复制、修改、编撰这些
内容、或创造与内容有关的衍生产品。
7)如果您未遵守本协议的任何一项条款,北京航天理想科技股份有限公司有权立即终止本协议,并保留通过法律手段追究责任。
三、北京航天理想科技股份有限公司具有对以上各项条款内容的最终解释权和修改权。
如用户对北京航天理想科技股份有限公司的解释或修改有异议,
应当立即停止使用本软件产品。
用户继续使用本软件产品的行为将被视为对北京航天理想科技股份有限公司的解释或修改的接受。
四、因本协议所发生的纠纷,双方同意按照中华人民共和国法律,由北京航天理想科技股份有限公司所在地的有管辖权的法院管辖。
北京航天理想科技股份有限公司
3检测是否安装过软件
点击“屏幕”—>工程主题—>安装之前—>开始安装—>编辑
在弹出的窗口中“编辑”选项下的OnPreload下写入以下代码:
--这些操作在屏幕显示之前执行。
ifFile.DoesExist("%AppFolder%\\VDK_test.exe")then
--如果文件存在,提示并退出安装程序
result=Dialog.Message("通知","不好意思,软件已经安装过了,将退出安装.",MB_OK,MB_ICONINFORMATION,MB_DEFBUTTON1);
Application.Exit();
else
Dialog.Message("友情提示","本地未安装过软件",MB_ICONINFORMATION);
end
4设置asit_vdk_dev.ocx控件自动注册
右键asit_vdk_dev.ocx文件选择文件属性
-
在高级选项中勾选上“注册COM接口”和“注册类型库”
点击右侧“测试”按钮,若弹出如下弹窗,则支持自动注册
5设置快捷方式
双击或右键VDK_test.exe选择“文件属性”
在“快捷方式”选项下勾选“桌面”“开始菜单”“开始菜单-->程序”等选项。
6卸载
卸载时,删除注册表。
在卸载—>操作—>OnPreUninstall下加入下面代码:
Registry.DeleteKey(HKEY_LOCAL_MACHINE,"SOFTWARE\\可视化分析个人版");
OnPostUninstall下加入:
Folder.Delete("%AppFolder%\\可视化分析个人版");//暂时不加
7写入注册表
在操作—>启动时第一个选项里加入如下代码
result1=Registry.DoesKeyExist(HKEY_LOCAL_MACHINE,"SOFTWARE\\可视化分析个人版");
--Dialog.Message("提示信息","即将检查是否安装旧版本软件。
",MB_ICONEXCLAMATION);
if(result1==false)then
--要执行的语句写入注册表
--Dialog.Message("提示信息","没有安装过",MB_ICONEXCLAMATION);
Folder.Create("%AppFolder%\\可视化分析个人版");
Registry.CreateKey(HKEY_LOCAL_MACHINE,"SOFTWARE\\可视化分析个人版");
Registry.SetValue(HKEY_LOCAL_MACHINE,"SOFTWARE\\可视化分析个人版","VDK_test",SessionVar.Expand("%AppFolder%").."\\可视化分析个人版\\VDK_test.exe",REG_SZ);
else
Dialog.Message("提示信息","您已安装过软件,请先进行卸载。
",MB_ICONEXCLAMATION);
File.DoesExist(SessionVar.Expand("%WindowsFolder%\\%ProductName%\\uninstall.exe"));
--[[
result=SessionVar.Expand("%SystemFolder%");--获得系统目录字符串?
Common=result.."\\可视化分析个人版";--生成Common目录字符串,..?
为字符串连接符
File.Run(SessionVar.Expand("%Common%\\uninstall.exe"),"","",SW_SHOWNORMAL,true);
]]
Application.Exit(0);
End
目前检测到安装过,赢进行卸载,但是卸载拿不到uninstall.exe文件
8构建
检查文件是否遗漏,试用期文件是否包含在内。
点击“构建”。
打包完成。
附录1:
检查注册表,是否有.NET4环境
result=Registry.DoesKeyExist(HKEY_LOCAL_MACHINE,"SOFTWARE\\Microsoft\\.NETFramework\\policy\\v4.0");
if(result==false)then
result=File.Run(SessionVar.Expand("%TempLaunchFolder%\\Netframework4.exe"),"","",SW_SHOWNORMAL,true);
End
附录2:
是已安装软件
result1=Registry.DoesKeyExist(HKEY_LOCAL_MACHINE,"SOFTWARE\\可视化分析个人版");
Dialog.Message("提示信息","即将检查是否安装旧版本软件。
",MB_ICONEXCLAMATION);
if(result1==false)then
--要执行的语句写入注册表
Dialog.Message("提示信息","没有安装过",MB_ICONEXCLAMATION);
Folder.Create("%AppFolder%\\可视化分析个人版");
Registry.CreateKey(HKEY_LOCAL_MACHINE,"SOFTWARE\\可视化分析个人版");
Registry.SetValue(HKEY_LOCAL_MACHINE,"SOFTWARE\\可视化分析个人版","VDK_test",SessionVar.Expand("%AppFolder%").."\\可视化分析个人版\\VDK_test.exe",REG_SZ);
else
Dialog.Message("提示信息","您在(比如说:
C:
\1)已安装过系统,请卸载后再安装。
",MB_ICONEXCLAMATION);
Application.Exit(0);
end
--[[
ifFile.DoesExist("%WindowsFolder%\%ProductName%\uninstall.exe")then
result=Dialog.Message("通知","不好意思,软件已经安装过了,将退出安装.",MB_OK,MB_ICONINFORMATION,MB_DEFBUTTON1);
Application.Exit();
else
Dialog.Message("提示信息","没有安装过",MB_ICONEXCLAMATION);
end
附录3:
卸载删除
Folder.Create("%AppFolder%\\可视化分析个人版");
Registry.CreateKey(HKEY_LOCAL_MACHINE,"SOFTWARE\\可视化分析个人版");
Registry.SetValue(HKEY_LOCAL_MACHINE,"SOFTWARE\\可视化分析个人版","VAPE",SessionVar.Expand("%AppFolder%").."\\可视化分析个人版\\VAPE.exe",REG_SZ);
Registry.DeleteKey(HKEY_LOCAL_MACHINE,"SOFTWARE\\可视化分析个人版");
--Folder.Delete("%AppFolder%\\可视化分析个人版");
--File.Delete(SessionVar.Expand("%WAPEx%\\VDK_test.exe"),false,false,false,nil);
附录4:
我自己乱写的代码,仅供自己参考
--[[
ifFile.DoesExist(SessionVar.Expand("%WindowsFolder%\\%ProductName%\\uninstall.exe"))then
Dialog.Message("提示信息","存在卸载exe",MB_ICONEXCLAMATION);
else
File.Run(SessionVar.Expand("%WindowsFolder%\%ProductName%\uninstall.exe"),"","",SW_SHOWNORMAL,true);
end
result=Registry.DoesKeyExist(HKEY_LOCAL_MACHINE,"SOFTWARE\\Microsoft\\.NETFramework\\policy\\v4.0");
if(result==false)then
result=File.Run(SessionVar.Expand("%TempLaunchFolder%\\Netframework4.exe"),"","",SW_SHOWNORMAL,true);
end
]]
--File.Run(Sessionvar.Expand("%WindowsFolder%\\%ProductName%\\uninstall.exe"),"","",SW_SHOWNORMAL,true);ACERCLRC
result2=Registry.DoesKeyExist(HKEY_LOCAL_MACHINE,"SOFTWARE\\可视化分析个人版");
if(result2==false)then
--要执行的语句写入注册表
--Dialog.Message("提示信息","没有安装过",MB_ICONEXCLAMATION);
--Folder.Create("%AppFolder%\\可视化分析个人版");
--Registry.CreateKey(HKEY_LOCAL_MACHINE,"SOFTWARE\\可视化分析个人版");
--Registry.SetValue(HKEY_LOCAL_MACHINE,"SOFTWARE\\可视化分析个人版","VAPE",SessionVar.Expand("%AppFolder%").."\\可视化分析个人版\\VAPE.exe",REG_SZ);
Registry1=Registry.DoesKeyExist(HKEY_LOCAL_MACHINE,"SOFTWARE\\Classes\\Microsoft.ACE.ACERCLR.10.0");
Registry2=Registry.DoesKeyExist(HKEY_LOCAL_MACHINE,"SOFTWARE\\Classes\\Microsoft.ACE.ACERCLR.12.0");
if(Registry1==false)then
if(registry2==false)then
File.Run(SessionVar.Expand("%TempLaunchFolder%\\AccessDatabaseEngine.exe"),"","",SW_SHOWNORMAL,true);
end
end
else
Dialog.Message("提示信息","您已安装此软件,请先进行卸载再安装。
",MB_ICONEXCLAMATION);
--result=File.Run(SessionVar.Expand("%WindowsFolder%\\%ProductName%\\uninstall.exe"),"","",SW_SHOWNORMAL,true);
Application.Exit(0);
end
--从注册表中导入的值:
--Registry.CreateKey(HKEY_LOCAL_MACHINE,"SOFTWARE\\Classes\\Microsoft.ACE.ACERCLR.12.0\\CLSID");