AutoUpdater.NET(https://github.com/ravibpatel/AutoUpdater.NET)的原理大致是从服务器上(IIS站点)下载包含更新信息的XML文件,通过下载的...XML文件获取Winform等桌面程序软件的最新版本的信息.如果最新版本的大于电脑上安装的版本,则 AutoUpdater.NET从XML文件中提供的URL下载更新文件(安装程序),如果XML文件中提供的...URL提供的是包含zip后缀的URL而不是安装程序,则AutoUpdater.NET将zip文件的内容解压缩到应用程序目录。...1、xml文件 AutoUpdater.NET使用服务器网站上的XML文件获取有关软件最新版本的发布信息.需要创建如下XML文件,然后将其上传到服务器网站中 false version(必填):桌面软件的版本 格式为X.X.X.X,AutoUpdater.NET
本期同样带给大家分享的是阿笨在实际工作中遇到真实项目场景,请跟随阿笨的视角去如何开发实现WinForm通用自动更新器AutoUpdater,如果您对本期的教程内容感兴趣,那么请允许让阿笨带着大家一起学习吧...三、项目实现原理图 3.1、WinForm通用自动更新器AutoUpdater原理图 实现思路:在远程IIS自动升级服务器上放一个XML文件,里面记录了软件版本号,发布日期,要更新的DLL等一些信息,...3.3、问:WinForm通用自动更新器AutoUpdater是以什么方式进行文件下载的呢? 支持FTP协议和HTTP两种协议方式,推荐使用HTTP方式。
= log autoUpdater.logger.transports.file.level = "info" const path = require('path') const isDevelopment...= false // 检测是否有新版本 autoUpdater.checkForUpdates() autoUpdater.on('checking-for-update'..., res => { log.info("获取版本信息:" + res) }) autoUpdater.on('update-not-available', res =...> { log.info("没有可更新版本:" + res) }) autoUpdater.on('update-available', res => {.../index.html#/update') } } autoUpdater.on('download-progress', res => { log.info
path.dirname(app.getPath('exe')) // 打包后 : app.getAppPath(); // 打包前const { autoUpdater } = require...('http://127.0.0.1:9005/win32'); } else { // mac系統更新 } autoUpdater.checkForUpdates();...//监听'error'事件 autoUpdater.on('error', (err) => { logMsg(`autoUpdater错误${err}`); });...//监听'update-available'事件,发现有新版本时触发 autoUpdater.on('update-available', () => { logMsg('发现更新-...//监听'error'事件 autoUpdater.on('error', (err) => { logMsg(`autoUpdater错误${err}`); });
) return; 自动更新 electron自动更新模块 我们需要自行对其开发 首先在main.js中加入如下代码 其中代码可以自动识别当前系统版本并发送更新请求 //自动更新 const { autoUpdater...platform=${process.platform}&version=${app.getVersion()}` console.info("自动更新地址",url) autoUpdater.setFeedURL...({ url }) //设置每隔一段时间检测更新 setInterval(() = { autoUpdater.checkForUpdates() }, 60000) autoUpdater.on...} dialog.showMessageBox(dialogOpts).then((returnValue) = { if (returnValue.response === 0) autoUpdater.quitAndInstall...() }) }) autoUpdater.on('error', (message) = { alert("自动更新失败") alert(message) console.error(
, () => { autoUpdater.checkForUpdates(); }); // 主进程监听开始下载事件 ipcMain.on(IPC_EVENT.EVENT_UPDATE_DOWNLOADUPDATE..., () => { autoUpdater.downloadUpdate(); }); // 检测到有可用的更新 autoUpdater.on(IPC_EVENT.EVENT_UPDATE_UPDATEAVAILABLE...) => { win.webContents.send(IPC_EVENT.EVENT_UPDATE_UPDATEAVAILABLE, info); }); // 下载更新进度 autoUpdater.on...win.webContents.send(IPC_EVENT.EVENT_UPDATE_DOWNLOADPROGRESS, progressObj); }); // 下载完成并安装 autoUpdater.on...(IPC_EVENT.EVENT_UPDATE_UPDATEDOWNLOADED, () => { autoUpdater.quitAndInstall(); win.webContents.send
不是electron中的autoUpdater import {autoUpdater} from "electron-updater" /** * Set `__static` path to static..., }; //和之前package.json配置的一样 autoUpdater.setFeedURL('http://xxx.com/app/update...'); //更新错误 autoUpdater.on('error', function (error) { sendUpdateMessage(...returnData.error) }); //检查中 autoUpdater.on('checking-for-update', function (...) { sendUpdateMessage(returnData.checking) }); //发现新版本 autoUpdater.on
autoUpdater 我们用electron-forge进行打包,其实这就自带了更新功能,即autoUpdater。...使用也很简单只需要几步,如下: const { autoUpdater } = require('electron') //先设置更新的url autoUpdater.setFeedURL({url:...这样autoUpdater会自动下载该目录下的RELEASES文件并读取配置,然后通过拿到的文件名下载更新文件并校验,成功后即自动后台安装。...目前这个问题还没有很好的规避,但是可以通过注册处理autoUpdater的error事件进行规避,如下: autoUpdater.on('error', (error) => { //dialog.showMessageBox...我们将文件下载到这个目录中,就可以通过autoUpdater进行本地更新了,与网络更新一样,只不过feedUrl变成了本地目录而已,如下: autoUpdater.setFeedURL({url: global.tmpPath
GeneralUpdate.Single/ https://www.nuget.org/packages/GeneralUpdate.Zip/ GitHub地址: Address:https://github.com/WELL-E/AutoUpdater.../tree/autoupdate2 Issues:https://github.com/WELL-E/AutoUpdater/issues 二、版本更新2021-3-18 (1)声明 本组件将支持以下框架开发的应用程序
> Application autoUpdate http://10.0.5.98...1.0.0.0" Name="Interop.grproLib.dll"/> </AutoUpdater
发布设置 electronBuilder: { builderOptions: { publish: ['github'] } } 主进程监听 autoUpdater.on...("checking-for-update", () => {}); autoUpdater.on("update-available", info => { dialog.showMessageBox...message: "有新内容更新,稍后将重新为您安装", buttons: ["确定"], type: "info", noLink: true }); }); autoUpdater.on...("update-downloaded", info => { autoUpdater.quitAndInstall(); }); 生成Github Access Token 因为是用github
GeneralUpdate.Core/ https://www.nuget.org/packages/GeneralUpdate.Single/ GitHub地址: Address:https://github.com/WELL-E/AutoUpdater.../tree/autoupdate2 Issues:https://github.com/WELL-E/AutoUpdater/issues ---- 1.版本更新2020-8-30 在新的发布中,GeneralUpdate.Core
在官方demo基础上添加“electron-updater” 组件(我们使用这个electron官方组件进行客户端的更新),在入口文件中main.electron.js 添加引用组件: const { autoUpdater
Nuget地址:https://www.nuget.org/packages/GeneralUpdate.Core/ GitHub地址:https://github.com/WELL-E/AutoUpdater...issues:https://github.com/WELL-E/AutoUpdater/issues 新增特性速览: 1.简洁启动代码 如下:Launch1 Launch2 名称 类型 备注 UpdateOption.Format
https://gitee.com/Juster-zhu/GeneralUpdate https://github.com/WELL-E/AutoUpdater/tree/autoupdate2 https...://github.com/WELL-E/AutoUpdater/issues https://gitee.com/Juster-zhu/GeneralUpdate/issues 4.New GeneralUpdate.Core
Admin <add key="UpdateAddress" value="http://121.36.12.76:5000/Update/<em>AutoUpdater</em>.xml
Github:https://github.com/WELL-E/AutoUpdater Gitee:https://gitee.com/Juster-zhu/GeneralUpdate 自动更新流程图...Github:https://github.com/WELL-E/AutoUpdater Gitee:https://gitee.com/Juster-zhu/GeneralUpdate
需要注意的是如果你的node版本过低,可能没有原生promise,因此需要这样配置fetch.Promise = require('es6-promise').Promise 最后electron官网,autoUpdater
GeneralUpdate.PacketTool (该工具使用avalonia编写,可在linux、windows、mac操作系统使用) github release: https://github.com/WELL-E/AutoUpdater...开源地址 https://github.com/WELL-E/AutoUpdater https://gitee.com/Juster-zhu/GeneralUpdate Q&A (1)主程序和升级程序之间是否支持相互升级
领取专属 10元无门槛券
手把手带您无忧上云