卸载不会删除更新程序cacheDir目录-如何添加到卸载程序

时间:2020-03-26 08:15:01

标签: electron nsis electron-builder electron-updater

AFAICT,用于电子应用的组件是在制造过程中指定的,尤其是在电子制造器中。设置nsis目标时,有多种安装选项,甚至提供deleteAppDataOnUninstall选项来删除AppData \ Roaming \“ application”目录。

但是电子更新程序模块还为升级过程创建了另一个缓存目录。特别是在AppData \ Local \“ application” -updater。该目录仅在触发更新过程时创建,因此该位置不会作为初始安装的一部分创建,因此构建过程也不知道该位置。它也不位于应用程序目录下(这是我期望的位置)。

这样,卸载过程对此application-updater文件夹一无所知,因此在卸载过程中永远不会被卸载。如果您的升级失败,则有可能阻止客户通过卸载/重新安装该应用程序来解决问题。

我已经梳理了互联网,但是找不到任何人在谈论这种差异。我会在Electronic-builder上记录一个问题,但是我的公司政策禁止我这样做。因此,在此期间,我想看看我是否可以做以下两件事之一:

  1. 将cacheDir目录添加到卸载程序,以便将其删除,或者

  2. 将cacheDir定位在应用程序目录中,以便在卸载期间将其删除。最终,我认为这将是解决此问题的电子制造商的PR,但如上所述,我无法做到这一点。

我一直在寻找其他尝试这样做的人,但都干dry了,因此,我非常感谢您对完成此操作的任何帮助。或有关如何解决此问题的其他想法。我有点菜鸟了,我已经了解到此文件(https://github.com/electron-userland/electron-builder/blob/master/packages/electron-updater/src/AppUpdater.ts)了,但是如何影响位置呢?我很困惑。

0 个答案:

没有答案