我有一个安装程序的NSIS代码.onInit我检查是否存在旧版本,如果用户点击确定按钮,它会卸载它,我希望一旦卸载完成安装重新执行,我尝试在un.onUninstSuccess
函数中调用.onInit
函数,但它不接受它,因为un.
函数只接受un.
函数。 任何想法将不胜感激。从卸载部分重新执行安装NSIS
0
A
回答
1
这不是要做的。当您启动卸载程序时,您将启动另一个进程(通常为uninstall.exe
),因此您不能仅从它跳到安装程序。
你可以做的是:
- 检查,如果以前的版本存在
- 如果是这样,开始其unistall.exe在等待子进程完成
- 一旦你回到安装程序,继续安装
平常的方式从安装调用卸载程序
ExecWait '"$INSTDIR\uninstaller.exe" /S _?=$INSTDIR'
0
可能不是最干净的解决方案,但有一个在NSIS维基
相关问题
- 1. NSIS卸载并同时安装活动
- 2. 卸载仅安装的文件NSIS
- 3. 开始执行NSIS安装
- 4. 当安装卸载时,NSIS不会中止安装
- 5. Ubuntu Mysql卸载/重新安装
- 6. 卸载CVSNT并重新安装
- 7. 卸载并重新安装HP QC 11.0
- 8. 如何从另一个NSIS安装程序中执行NSIS卸载程序并等待它完成?
- 9. 如何在Mac上安装/卸载/重新安装owasp zap
- 10. NSIS安装像装载机
- 11. NSIS卸载程序
- 12. 卸载/安装JDK
- 13. 想要在卸载部分有条件卸载NSIS脚本中的组件
- 14. 从Biztalk执行卸载oci.dll
- 15. NSIS页面和部分执行
- 16. .NET安装项目卸载安装文件夹在卸载
- 17. MSI在新安装之前卸载
- 18. 如何让NSIS从临时目录安装并执行文件?
- 19. Homebrew已安装一半。无法重新安装或卸载 - 我如何手动卸载?
- 20. 在NSIS部分创建多个卸载程序
- 21. NSIS卸载程序不运行un.onInit
- 22. 安装和部署不想卸载旧版本并安装新版本
- 23. 卸载已部分安装的XCode + iPhone SDK
- 24. WiX如何使EventSource安装,但使卸载部分可选
- 25. 可以将autotools配置为执行滚动安装/卸载吗?
- 26. 开发Android应用程序安装正常后卸载不会重新安装
- 27. NSIS中的卸载脚本
- 28. NSIS静默卸载SetErrorLevel
- 29. Windows徽标工具包重新安装/卸载
- 30. 在Yosemite上卸载Postgres并重新安装Postgres 9.3
一个combined un/installer例子谢谢@Seki就是这样,我只是在写一个答案,你发布你的,检查现有版本我运行后反正'ExecWait'“$ INSTDIR \ uninst.exe”/ S _?= $ INSTDIR''然后函数继续执行,因为没有安装版本,再次感谢您的时间。 – Oumaya