javascript - node如何關(guān)閉主進(jìn)程后 打開另一進(jìn)程?
問題描述
雖然感覺這個需求有點不符合正常邏輯,但是我需要實現(xiàn)的是,一個自動更新的效果,從服務(wù)器下載的ZIP,壓縮到另一文件夾,然后打開新版本前,關(guān)掉舊版。因為是基于NW.JS,不支持多窗口預(yù)覽,所以開始新的進(jìn)程(Nw窗口)前,得先關(guān)閉舊的進(jìn)程(nw窗口),由于NW 0.1.3 過后,不支持多窗口同時開啟了,所以。。挺尷尬的。。但是我覺得肯定可以做到我這個需求的,畢竟有個NW-AUTOUPDATER也實現(xiàn)了,可是它與項目需求不符,不能使用,所以特向各位大神請教,謝謝!
問題解答
回答1:好像和我這個框架里的實現(xiàn)差不多...https://github.com/llwslc/ele...
先在后臺下載zip包, 點擊升級調(diào)用如下代碼
exec(`start update.exe ${pkgInfo.name} ${process.pid}`, {encoding: ’binary’}); app.exit(0);
將當(dāng)前路徑路徑以及程序pid傳給update.exe, 然后程序退出...update.exe 會監(jiān)控該pid, 直到pid消失...pid消失后update.exe將解壓zip包...解壓完成后, 重啟主程序并自己退出...
mac下直接unzip就行, 不需要另起程序...
相關(guān)文章:
1. mysql 查詢身份證號字段值有效的數(shù)據(jù)2. python bottle跑起來以后,定時執(zhí)行的任務(wù)為什么每次都重復(fù)(多)執(zhí)行一次?3. 視頻文件不能播放,怎么辦?4. html5 - HTML代碼中的文字亂碼是怎么回事?5. python - 爬蟲模擬登錄后,爬取csdn后臺文章列表遇到的問題6. visual-studio - Python OpenCV: 奇怪的自動補全問題7. mysql - 分庫分表、分區(qū)、讀寫分離 這些都是用在什么場景下 ,會帶來哪些效率或者其他方面的好處8. javascript - 彈出一個子窗口,操作之后關(guān)閉,主窗口會得到相應(yīng)的響應(yīng),例如網(wǎng)站的某些登錄界面,django后臺的管理等,這是怎么實現(xiàn)的呢?9. javascript - ios返回不執(zhí)行js怎么解決?10. android - 分享到微信,如何快速轉(zhuǎn)換成字節(jié)數(shù)組
