用Inno Setup给程序制作安装包
标题我没写QT学习,因为这个InnoSetup可以给任何文件生成安装包。
InnoSetup这好像是个免费软件,但我去官网发现只有英文版,所以我在国内下了个汉化版,大家有需要可以自行去下载。
安装完打开InnoSetup,然后我们点击“文件”->“新建”,是这个样子:
新建安装脚本向导
点击下一步,设置好应用程序名称、版本及其它信息:
设置好程序信息
然后下一步,设置程序要安装到的地方
设置安装文件夹
这里第一个框我们用默认的,这时我们的程序会装到C:\Program Files(X86)文件夹下的LaoZhao子文件夹下,但是我们给用户选择的权力(下面那个勾),下一步。
这步选择我们的程序的可执行文件(nowater.exe),就是我们前面编译出来的那个软件,并把我们前面用windeployqt复制了好多文件的那个文件夹添加进来(D:\qtexe)。下一步。
打包文件和文件夹
再下一步是应用程序快捷方式的选项,这里默认就行了,我就不截图了。再下一步。
这一步是程序的许可文件,就是咱们平时安装程序时显示的那个什么什么协议,我同意,不同意之类的那个文件,还有两个文件可以在安装前和安装完成后显示。这里我图省事,就先不做这三个文件了。下一步。
安装许可文件
接下来的这一步是安装模式:
安装模式
这里默认是第一个选项,所有用这台电脑的用户都可以用这个软件,双击安装包安装时会提示获取管理员权限。
第二个选项则是普通安装,不提示要求权限,但是安装的软件只有当前用户有可执行权限和开始菜单快捷方式等等。
第三个。。。。。。我也不知道啥意思。
第四个选项则是在启动安装包时把选择权给客户,可以选给当前用户安装,也可以选择给全部用户安装。勾选这个选项时会强制勾选第三个选项。在这里我勾上了,让用户多一份选择嘛。
下一步,这一步是选择安装程序的语言,默认是选的中文,如果你的程序要全球化,就多选几个。
再下一步,这步是设置生成的安装文件存在哪里,及它的文件名称,还可以自已定义安装程序的图标,而且还可以给安装程序设置密码,这样可以防止一些内部程序的泄露,泄露了他们也无法安装。
安装包设置
然后是再两次的下一步、完成。然后会提示你是否现在编译安装脚本,等个毛线啊,编译。
然然然然后就是等几秒钟,就成功了:
编译成功
然后我们去刚才设置的输出目录里看一下
生成的安装包
哈哈,安装包生成了。
下面我们运行它并实际安装一下
第一步
第三步
第四步
第五步
下面就没啥关键步骤了。别问我为什么没第二步,因为那是在申请权限,所有软件都暂停运行,无法截图。
安装完成后开始菜单和桌面都会有我们的程序的图标,点击就能运行,而且在我们程序的目录,还会生成卸载文件unins000.exe,控制面板的程序里面也会有我们程序的卸载方式。
是不是很厉害。
厉害个毛线啊,咱们这个程序不是会把下载目录保存到config.ini中么,而且我们读写config.ini时没加路径,当时我就天真的以为这个文件会和exe文件在同一个目录下。可是我刚才安装好并运行后,程序的目录里并没有config.ini,这就奇怪了。
后来用Windows的搜索功能搜索了一下,才在下面这个路径中找到了,看来程序的起始目录并不是它的存放目录啊,有玄机。。。而且我还在此处找到了有个Tencent文件夹,里面是微信的某些东西。。。
程序起始目录
看来要获得程序存放目录,还是要手动获得呀,不能依靠"./"。
我告诉你msdn版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!