首页 新闻 会员 周边 捐助

installshield卸载后自动执行安装

0
悬赏园豆:80 [已关闭问题] 关闭于 2011-11-08 14:06

各位:

   在用installshield制作的安装程序A。安装时如果目标机中已经安装了A,此时安装要求先卸载。

那么执行卸载A后如何再自动执行安装包进行安装A呢?

请指教

问题补充:

升级功能是制作升级包。但是 如果要安装的版本和已经安装的版本相同或低于已安装的版本呢。

说白了就是想重复安装软件,如果已安装就自动卸载(installshield已实现)后再重新安装一篇。

是否可以通过批处理来解决。望指正。

批处理中是否可以判断installshield的执行是卸载、还是安装吗?

 

 

在网上看到这个解决办法:

//正文

攻克“用InstallShield制作卸载快捷方式”
2007-11-22
分类:
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://managedog.blogbus.com/logs/10928160.html

用InstallShield制作安装文件简直是及其特别以及非常的方便快捷,可是涅,要卸载的话,非得把安装文件再点击一次,真的是特别滴不爽,在网上搜了好久,信息不多不说,还有好多人说的根本就行不通,最终卖力滴把下面这种方法看懂了:

“可以这样做的,在Resource页面下选择startmenu->programs->shell->新建一个快捷菜单,在其对应的属性页中的shortcut text中写入UNINSTALL(你想写什么就写什么),在target 里面输入<PROGRAMFILES>\InstallShield Installation Information\{2CE6588F-D966-41C7-BAEB-1DB319218F1A}\Setup.exe,这里替换{2CE6588F-D966-41C7-BAEB-1DB319218F1A}为你的项目ID(PROJECT ID),然后在parameters中输入"/uninst"(不要加双引号),最后在install condition中输入你项目的程序组名称即可,这下rebuilding ,OK了吧,我的就是这样实现的没有问题的”

 

恩,很好,很强大

//正文完

但resource页面在什么地方找不到。

能人能否指点一二。先谢谢了。

keleman的主页 keleman | 菜鸟二级 | 园豆:265
提问于:2011-10-09 09:43
< >
分享
所有回答(1)
0

这是InstallShield升级功能吧,变更产品版本号就行,安装包会先卸载旧版本,然后安装新版本。

如果是同一个版本,那第一次运行是安装,第二个运行就是卸载或修复。

Kevin.Wan | 园豆:273 (菜鸟二级) | 2011-10-09 16:31

如果是InstallScript,在OnBegin中通过调用脚本先将老版本或同版本卸载掉,具体可以参考InstallScript安装包的静默卸载。

支持(0) 反对(0) Kevin.Wan | 园豆:273 (菜鸟二级) | 2011-10-11 09:35

@Kevin.Wan: 能否说的详细些

支持(0) 反对(0) keleman | 园豆:265 (菜鸟二级) | 2011-10-13 11:33

@Kevin.Wan: 

在OnBegin中执行卸载函数,提示警告。有另一个进程正在执行,取消 再运行该程序

function OnBegin()
STRING szfilename;
begin

szfilename = UNINSTALL_STRING +" /UNINSTALL" ;

LaunchAppAndWait(szfilename,"",WAIT);


end;

支持(0) 反对(0) keleman | 园豆:265 (菜鸟二级) | 2011-10-20 15:46
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册