代码改变世界

【原创】【续】InstallSheild使用问题笔记-卸载程序之后重新启动,总是报错找不到文件?

2011-01-25 15:57  刺客之家  阅读(308)  评论(0编辑  收藏  举报

本文接续上文:【原创】InstallSheild使用问题笔记-卸载程序之后重新启动,总是报错找不到文件?

 

在上文中,我想当然的认为最后可以通过Script来删除RunOnce里的启动项,后来发现这是不可行的,无论代码写在哪里,

启动项还是在那。

我推测原因在于:InstallShield提供我们写代码的几个函数,其执行的时机都是固定的,而注册表项的写入时InstallShield自己

内部的逻辑,其执行的时机可能在我们能写的代码之后。所以我的删除逻辑永远在它写注册表之前执行。

为了解决这个问题,多方打听,最后InstallShield - Kevin Wan给了我答案,再次表示感谢,解决方法如下:

在OnEnd里加入:

BATCH_INSTALL=FALSE ;

表示该卸载过程不需要重启。InstallShield看到这个标记就不会再注册表里增加setup.exe的启动项目了

本博客文章若非标记转载,均为原创,转载请注明出处~