自己在前人的基础上已经做了不下10个不同种类的安装包,目前还未涉及多语言,分 类别安装的情况(公司不涉及)
自己整理下一些血泪换来的心得,希望未来的自己能注意下:
inno setup版本:Inno Setup 版本 5.5.5
测试系统:win2012R2
下面的一切结论皆只对本机有效
1 想要创建新的注册表,只能在环境变量里新增key-value来实现,且必须在[Code]段;
该死的[Registry]就是不起作用
2 如果你想在安装后(即程序文件复制完毕),启动相应文件的服务,比如tomcat/mysql,
必然要调用mysqld或service,记得切换到安装目录在调用,因为环境变量的值并未生效
3 在2的情况也涉及在[Code]段,调用外部程序,如对于安装mysql ,tomcat,要涉及
call mysqld install xxx
call net start xxx
call service intall a
call net start a
exit
记得一定要加call,因为程序间的先后顺序是不能改变的,不能异步,必须等待上一个程序执行完毕才能执行下一个
4 在诸如MsgBox等弹出框上显示文字时,特殊字符需要转义,比如回车#13#13 ,其他自己查吧,我只用到这个
5 以上在iss案例脚本中都有涉及,必须参考啊童鞋!
其实坑还有很多,但这几个会让你怀疑人生。
祝你好运!
jiangxu遗言 2018年03月08日,女王大人万岁!!!
2018年07月20日,追补:
现在已经很熟练,觉得这软件还是不错 的,至于[Registry]为什么无法生效的问题,真心没时间复查,目前猜测,win2012R2这个操作系统属于服务器OS,注册表和环境变量一类信息写入后都需要重启后才能生效的。可能是这个原因。而至于我为什么在win2012R2系统,是因为公司特意花前买的专用服务器(非普通台式机),要求软件出版本必须在专业的机器上。而且生成后的软件也必须适应除了xp以外的win7以上系统。