Electron 更新程序在用户级别保留新更新

问题描述 投票:0回答:1

我使用以下脚本安装我的电子应用程序(适用于 Windows 的 msi 版本):

msiexec /i "https://URL_TO_MY_APP_Messenger.msi" MSIINSTALLPERUSER=""

它安装在 C:\Program Files\Messenger 下,这是预期的,因为我希望该应用程序位于系统级别

但是正如我所看到的,我还有另一个文件夹 C:\Users\Ismoil\AppData\Local\messenger-updater 看起来这是电子更新程序保存该文件夹中某些文件的更新的地方

  • 安装程序.exe
  • 待处理/Messenger-some-version-number.exe
  • 待定/update-info.json

应用程序更新后,我最终会在桌面屏幕上看到 2 个应用程序,因为新更新的安装位于用户级别下 C:\Users\Ismoil\AppData\Local\Programs\Messenger

如何解决?

理想情况下,我想根据 MSIINSTALLPERUSER=""(系统级别)MSIINSTALLPERUSER="1"(用户级别)来控制更新文件夹

如果不可能,我想将我的应用程序仅保留在系统级别,但看起来电子更新器仅在用户级别保留更新

electron electron-builder electron-updater
1个回答
0
投票

看起来自动更新程序不支持 MSI 版本,我认为这就是我们通常在 Windows 中看到 2 个版本的 Messenger 的原因。 在我们的例子中,到目前为止,自动更新程序正在通过 NSIS

.exe
安装进行工作。 合作伙伴使用脚本安装
msi
版本,并且由于自动更新程序不支持
msi
,因此它只是下载并安装
.exe
版本的应用程序(在用户级别),如果
msi
是,则会创建副本最初安装在系统级别

不幸的是,截至2024年

electron-updater
仍然不支持MSI自动更新,它仅支持NSIS(.exe)

© www.soinside.com 2019 - 2024. All rights reserved.