electron有自己的下载更新安装包的方法,但是公司要求配置文件和下载地址不一致。启动它。//获取并运行exe文件varcp=require("child_process");downloadExe(file_url,targetPath){letthat=this;varreceived_bytes=0;vartotal_bytes=0;varexePath=path.dirname(remote.app.getAppPath());varreq=request({method:"GET",url:file_url});让arr=file_url.split("/");varout=fs.createWriteStream(exePath+arr[arr.length-1]);请求管道(输出);req.on("response",function(data){total_bytes=parseInt(data.headers["content-length"]);});req.on("data",function(chunk){received_bytes+=chunk.length;that.percent=parseFloat(((received_bytes/total_bytes)*100).toFixed(0));});req.on("end",function(){//下载成功,解压覆盖cp.exec(exePath+"/text.exe",[],(error,stdout,stderr)=>{console.log(错误,标准输出,标准错误)});});},方法和我上一篇文章的热更新方法很像,不同的是一个是解压覆盖,一个是运行,重点是exec方法。
