前段时间帮朋友的软件打包,他有这样一个要求:因为他的客户对计算机知识不是很熟悉,尽量减少他们与安装程序的交互。比如,只要安装不需要卸载。
为什么有这个需要呢,或者说为什么我要把这个问题拿出来说呢,主要是大家在用IS的时候肯定遇到这个问题--setup做好后,第一次执行setup.exe能正常安装;第二次再执行setup.exe时默认会出现一个让我们选择是“修复、修改、卸载”选项,然后下一步。现在对方要求是不管用户点击几次setup.exe,要求都是安装,永远直管安装。需要卸载时哪怕他们手动来卸载。
-----
我的做法是这样的:
在IS脚本中,打开这个函数OnMaintUIBefore() --第一个下拉框选中Before Move Data,第二个下拉框就有这个函数了,这个函数是运行在in maintenance mode的,所以只要改这个函数即可。把乱七八糟的代码全部注释掉,加入这两句即可:
OnFirstUIBefore();
OnFirstUIAfter();
这两个函数是默认的第一次安装时--即第一次双击setup.exe后做的事情,前者一般用于拷文件,后者一般用户拷好文件后进行相关配置。