我的安装程序使用我的应用程序和安装程序本身创建一个文件夹。该安装程序稍后用作应用程序的更新程序。
所有这些都运行良好,但我想更新安装程序本身,而不仅仅是我的应用程序。
我从服务器下载了一个 zip 文件,并希望 zip 文件中的所有内容都会覆盖应用程序文件夹中的所有内容(包括安装程序本身)。 每次运行安装程序时,我都会收到一条错误消息,指出文件已在使用中。
安装程序可以自行更新吗?
最佳答案
您无法替换正在运行的应用程序。
您有以下选择:
- 通过批处理文件启动“更新程序”(指“开始”菜单中更新程序的假定快捷方式或任何其他调用方法),将安装程序的副本复制到临时位置并从那里运行更新程序。更新时,更新原始副本。
- 为了避免批处理文件(以及令人不快的控制台窗口),您可以使用 JScript。或者甚至让安装程序(更新程序)自行执行此操作(创建自身的副本,启动副本,自行退出)。
- 使用
restartreplace
flag inFiles
section entry安排下次 Windows 启动时更换安装程序/更新程序。
关于inno-setup - 创新设置: Can the installer update itself?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33782498/