From 59537e398b320286ae523144c44198601df5c7fc Mon Sep 17 00:00:00 2001 From: life Date: Thu, 24 Sep 2015 12:56:34 +0800 Subject: [PATCH] =?UTF-8?q?kill=20port=E5=9C=A8main=E4=B8=AD,=20=E9=98=B2?= =?UTF-8?q?=E6=AD=A2refresh=E6=97=B6kill=E6=8E=89=E8=87=AA=E5=B7=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/data/version | 2 +- src/main.js | 23 +++++++++++++++++++++++ src/node_modules/server.js | 10 +++++----- 3 files changed, 29 insertions(+), 6 deletions(-) diff --git a/src/data/version b/src/data/version index 1278ff12..027e5bcb 100644 --- a/src/data/version +++ b/src/data/version @@ -1 +1 @@ -{"version":"0.6.4","updatedTime":"2015-09-22T07:11:51.505Z"} \ No newline at end of file +{"version":"0.7","updatedTime":"2015-09-22T07:11:51.505Z"} \ No newline at end of file diff --git a/src/main.js b/src/main.js index 6a8ebf66..2e5be588 100644 --- a/src/main.js +++ b/src/main.js @@ -209,7 +209,30 @@ function setMenu() { Menu.setApplicationMenu(menu); // Must be called within app.on('ready', function(){ ... }); } +var child_process = require('child_process'); +function killPort(callback) { + var port = '8912'; + if (process.platform.toLowerCase().indexOf('win') === 0) { + // & EXIT 表示只循环一次 + // Leanote会有两个pid绑定端口, 另一个和electron相关, kill掉也会把自己kill掉 + var sh1 = 'FOR /F "tokens=4 delims= " %P IN (\'netstat -a -n -o ^| findstr :' + port + '\') DO (TaskKill.exe /F /PID %P) & Exit'; + var sh2 = 'FOR /F "tokens=5 delims= " %P IN (\'netstat -a -n -o ^| findstr :' + port + '\') DO (TaskKill.exe /F /PID %P) & Exit'; + child_process.exec(sh1, function () { + child_process.exec(sh2, callback); + }); + } + else { + var sh = 'kill -9 $(lsof -i:' + port + ' -t)'; + child_process.exec(sh, callback); + } +} + function openIt() { + killPort(_openIt); +} + +function _openIt() { + // console.log(arguments); // app.getPath('appData'); // var Evt = require('evt'); diff --git a/src/node_modules/server.js b/src/node_modules/server.js index 534099c8..07a8d2e6 100644 --- a/src/node_modules/server.js +++ b/src/node_modules/server.js @@ -104,10 +104,10 @@ var Server = { child_process.exec(sh, callback); } } - killPort(function (error, stdout, stderr) { - if (error !== null) { - console.log('kill port error: ' + error); - } + // killPort(function (error, stdout, stderr) { + // if (error !== null) { + // console.log('kill port error: ' + error); + // } server.listen(Evt.port); console.log("Server runing at port: " + Evt.port + "."); @@ -116,7 +116,7 @@ var Server = { me._started = true; me.server = server; - }); + // }); }, // 关闭服务