【教程】InstallShield使用完全教程
InstallShield
Installshield是一个强大和易于使用,用于解决Windows软件安装包开发的制作工具。用它可以以传统MSI方式和虚拟格式,自动化地封装、捆绑和包装你的产品。
IntallShield能使你的用户在决定何时何地何方式管理和部署你的应用程序时,得到一个最时尚舒畅的安装体验。是Microsoft Windows平台上应用程序安装打包领域,使用最广泛和市场认可度最高的一款安装打包工具软件,支持Windows(客户版本及服务器版本),Web服务和移动设备。
对于软件开发人员来说,Installshield是一个非常优秀的工具,用来打包自己的应该程序,刚好今天想打包自己的网络电视,所以写个使用教程。
①下载Installshield
网上下载的也比较多,破解版的也多,如果有需要的,可以留下邮箱
②新建工程
打开Installshield 2010 Premier Edition,新建一个Installscript MSI Project,这种被称之为半脚本程序,因为兼具Basic Project基本类型和Installscript Project全脚本类型两者的优点,我比较喜欢用。像我这样需求的,既要用到Wizard的便利,又想写一点脚本来实现一点自定义操作的,就比较适合用这种类型啦。
选择类型为Windows Installer | InstallScript MSI Projcet,输入工程名,指定工程所在的文件夹。

③配置工程
界面会切换到Project Assistant,我们先从这里开始把工程的基本组件和基本文件建立好。

在Project Assistant界面的底部,会有一个引导动作条,在建立该工程的基本结构和文件时,我们都将在此界面进行操作,下文都将以“引导条”来指代这个引导动作条。

❶点击引导条上的Application Information
这里输入:
公司名,公司名将会出现在Setup.exe的注解中
软件名,将会出现在安装过程的左上角标题栏上
版本号,自己比较方便地知道自己在编译哪个版本的软件
公司网址,如果该公司没有网址呢?而且这里有点bug,好像默认的值总是会报一个String_ID1为空的错误,自己输入一个网址就不会报错。
是否在你创建了更新时自动通知最终用户,没用过,我都选了No。
选择一个图标,这个图标会出现在“添加或删除程序”里,我一般用默认的,当然你可以替换成自己想要的图标。

❷点击引导条上的Installation Requirement
这里选择对操作系统和一些软件的需求。根据自己需要来选择是否要求操作系统的版本,已及是否要求安装了某些软件。
我这里不需要其它需求,所以都选no

❸点击引导条上的Installation Architecture
我这里不需要这个配置,不过还是提一下。
这是个十分有用的设置,对于分布式软件来说非常合适,分布式软件的每个组件可以设置为一个Feature,用户可以自由选择安装某些功能。
将选项Do you want to customize your Installation选择为Yes。点击选中根节点Installation Architecture,点击New创建新的Feature,可以为每个Feature指定新名称。还可以在Feature下创建子Feature,比如如果文档Feature下包括软件本身文档,和软件所需的运行环境的文档,那么可以创建两个子Feature,分别包含两种文档,用户在安装时就可以选择安装部分或者全部文档了。这里我们没有用到子Feature,用途和普通Feature一样。
❹点击引导条上的Application Files
我们将在这里对安装路径进行微调,并且为每个Feature指定需要安装的文件
这里我不想使用Program Files | Company Name | Product Name这个路径,我想使用Program Files | Product Name,我直接点击选中My Product Name[INSTALLDIR]拖动到ProgramFileFolder下,还可以直接将My Product Name 改成自己想要的文件夹名字

如果前面设置了多个Feature,这里可以为每个Feature指定要安装的文件。
❺接下来我们为可执行文件创建快捷方式。
点击引导条上的Application Shortcuts ,点击New新建一个快捷方式
选择一个要建立快捷方式的Feature。
如果要建立快捷方式的程序为非.exe形式,请把Files Of选择选为All Files(*.*)格式。
我们的程序安装目标路径设置在Program Files下,因此双击[ProgramFilesFolder]打开,层层点击进入。

我们再切换去Installation Designer,找到System Configuration | Shortcuts。

这里可以看到快捷方式的所以路径,如果你想修改路径,直接拖就可以了
❻点击引导条上的Application Registry
向注册表写键和键值,由于本工程不需要,忽略之。有需要的朋友可以查阅相关资料,不难。
❼点击引导条上的Installation Location
这个是用来设置安装包的语言的,选择了多个语言后,用户可以在安装界面开始的时候选择安装时所用的语言;不过建议还是选个单语言吧,该什么语言的安装包就什么语言的安装包,各归各。
❽点击引导条上的Build Installation。
打包安装盘的设置,当然你也可以用工具条上的Release Wizard,自己写脚本。不过我也不是专业的,也不用定制每一个细节,所以就直接Build Installation了

可以看到编译成功了,有一个警告,是Automatic update notification disabled,这个是自己设置的,不管它
④测试安装文件
在我们保存文件的目录下可以找到安装程序,我这里是制作的本地安装文件,路径是"\PROJECT_ASSISTANT\SINGLE_EXE_IMAGE\DiskImages\DISK1\setup.exe"
把名字改成"成鹏致远网络电视_setup.exe",运行看看效果。

这界面熟悉吧,继续,会让用户输入用户信息

下一步,会让用户选择安装的方式,那个定制对上面提到的分布式软件就有作用了。

然后下一步,就安装成功了。
点桌面上的快捷方式运行程序看看效果。

怎么样,界面清爽吧,再看看程序在系统中的信息

看着还行吧,就这样了,其实InstallShield里面还有很多其它的配置选项,另外自己写脚本的话,完全可以个性化定制界面,只不过上面的配置对一般的屌丝来说够用了,所以其它的,感兴趣的自己去玩吧,最好是自己写脚本,工具党还是闹不出什么大事来,囧。。。。
如果你喜欢,就顶一下吧,嘿嘿!
【教程】InstallShield使用完全教程的更多相关文章
- PS网页设计教程——30个优秀的PS网页设计教程的中文翻译教程
PS网页设计教程--30个优秀的PS网页设计教程的中文翻译教程 作为编码者,美工基础是偏弱的.我们可以参考一些成熟的网页PS教程,提高自身的设计能力.套用一句话,"熟读唐诗三百首,不会作 ...
- AFNnetworking快速教程,官方入门教程译
AFNnetworking快速教程,官方入门教程译 分类: IOS2013-12-15 20:29 12489人阅读 评论(5) 收藏 举报 afnetworkingjsonios入门教程快速教程 A ...
- Nginx教程(一) Nginx入门教程
Nginx教程(一) Nginx入门教程 1 Nginx入门教程 Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like协议下发行.由 ...
- DroidParts 中文系列教程(基于官方教程)
DroidParts中文系列教程(基于官方教程) (一)DroidParts框架概况 2014年4月18日星期五 11:36 他是一个精心构造的安卓框架,包括下面这些基本功能 DI依赖注入,可以注入V ...
- AVR单片机教程——如何使用本教程
这是一篇元教程(meta-tutorial)——其他教程教你怎么使用AVR单片机,本篇教程教你如何使用本系列教程. 我们的教程已经把板载LED讲完了,但是教会你的不应该只是如何使用LED.你应该已经知 ...
- WebStorm 2019 3.3 安装及破解教程附汉化教程
WebStorm2019 3.3 安装及破解教程附加汉化教程 安装包及破解补丁 链接: https://pan.baidu.com/s/19ATTAW3Tsm0huIJSqYChTw 提取码:1ei7 ...
- MySQL8.0.20下载与安装详细图文教程,mysql安装教程
MySQL下载与安装(8.0.20版)教程 mysql安装包+mysql学习视频+mysql面试指南视频教程 下载地址: 链接:https://pan.baidu.com/s/1FmLFhGlajBQ ...
- SASS教程sass超详细教程
SASS安装及使用(sass教程.详细教程) 采用SASS开发CSS,可以提高开发效率. SASS建立在Ruby的基础之上,所以得先安装Ruby. Ruby的安装: 安装 rubyinstaller- ...
- Memcache教程 Memcache零基础教程
Memcache是什么 Memcache是danga.com的一个项目,来分担数据库的压力. 它可以应对任意多个连接,使用非阻塞的网络IO.由于它的工作机制是在内存中开辟一块空间,然后建立一个Hash ...
随机推荐
- jquery.uploadify 在firefox会出现httperror
原来是因为我的上传处理页面的page 继承了一个基类影响到的 然后这个基类 好像是因为在别的项目里面的原因 希望对也遇到这样的问题的人有帮助咯
- 使用maven命令安装jar包到本地仓库
第三方jar包在开发工具中引入后编译没问题, 启动调试包括打包时会提示找不到jar包的错误.需要上传到maven仓库中,并在pom文件内引入. maven命令: 安装指定文件到本地仓库命令:mvn i ...
- warning C4005 DXGI_STATUS_OCCLUDED
注意包含顺序 要将 $(DXSDK_DIR)Include放在后面才行 $(VC_IncludePath)$(WindowsSDK_IncludePath)$(DXSDK_DIR)Include 为了 ...
- The minimum required Cuda capability is 3.7.
stackoverflow上早有讨论 https://stackoverflow.com/questions/33651810/the-minimum-required-cuda-capability ...
- JavaScript Window Screen 用户屏幕的信息
window.screen 对象包含有关用户屏幕的信息. Window Screen window.screen 对象在编写时可以不使用 window 这个前缀. 一些属性: screen.avail ...
- Android权限详解
在Android的设计中,资源的访问或者网络连接,要得到这些服务都需要声明其访问权限,否则将无法正常工作.在Android中这样的权限有很多种,这里ATAAW.COM将各类访问权限一一罗列出来,供大家 ...
- block(八)作用域
//闭包 NSString* s =@"123"; void (^block)() = ^() { NSLog(@"%@",s); }; block();// ...
- iOS 相册相机应用2
在iOS中要拍照和录制视频最简单的方式就是调用UIImagePickerController,UIImagePickerController继承与UINavigationController,需要使用 ...
- Installation error: INSTALL_PARSE_FAILED_MANIFEST_MALFORMED
一般为AndroidManifest.xml中的activity的问题 这次主要是因为activity在另外一个package里面,但是package名称第一次字母是大写,所以出错 把package名 ...
- Loader Lock引起的一个Bug
在Windows中,让程序模块化实现的一种方式,就是让事实上现为动态链接库. 然后在主程序启动的时候隐式或者显示的去载入动态链接库.可是假设不恰当的编写动态链接库的DllMain函数,将会引起意想不到 ...