2017-02-02 8 views
0

노드 JS 응용 프로그램에서 작업하고 있습니다.노드 응용 프로그램 실행 파일이있는 영구 모듈

첫 번째 사용자가 인터넷에 연결되어 있는지 확인해야합니다. 그렇다면 KinectRuntime-v2.0_1409-Setup이 설치되어 있는지 확인하십시오 .. 그런 종류의 유효성 검사가 있습니다. 그래서 난 내 진입 스크립트에 다음 코드를 사용했습니다 :

내가 한 일을 우리가 응용 프로그램

var tempkinect = require('./controllers/tempkinect.js'); 
tempkinect.controller(app); 

require('dns').lookup('google.com',function(err) { 
    if (err){ 
    server.listen(8000, function(req, res){ 
     open('http://localhost:8000/internetnotfound'); // internet not found page. 
     return false; 
    });  
    } 
    else{ 
    try{ 
     var Kinect2 = require("kinect2"); 
     var kinect = new Kinect2(); 
     } 
     catch(ex) { 
     server.listen(8000, function(req, res){ 
     open('http://localhost:8000/kinectnotfound'); 
     open('https://www.microsoft.com/en-in/download/confirmation.aspx?id=44559'); 
     return false; 

     } 
    } //else ends here 
}); 

를 시작하는 데 사용할 // 입력 파일 :

broadcast.js 파일을 tempkinect.js : // 내 컨트롤러 파일

module.exports.controller = function(app){ 

    app.get('/kinectnotfound',function(req,res){ 

     var errmsg = "KinectRuntime-v2.0_1409-Setup not installed on your computer. Download will start automatically, if not then"; 

     var link = "https://www.microsoft.com/en-in/download/confirmation.aspx?id=44559"; 

     var click = "Click Here!" 

     res.render('initialerror',{errormessage:errmsg, downloadlink : link, clickhere: click, title : 'Kinect Not Found'}); 

    }); 

    app.get('/internetnotfound', function(req,res){ 
     require('dns').lookup('google.com',function(err) { 

      if (err){ 
       res.render('initialerror',{errormessage:'Please Connect Internet for Login.',downloadlink : '', clickhere : '', title : 'Internet Not Connected'}); 
      } 
      else{ 
       res.redirect('/restart'); 
      } 
     }); 
    }); 

    app.get('/restart', function (req, res, next) { 
     process.exit(1); 
    }); 

} 

노드 js 응용 프로그램을 컴파일하고 .exe 파일을 생성하는enclose 모듈을 사용하고 있습니다. 나는 내 로컬 컴퓨터 사용하여 명령 프롬프트에서 응용 프로그램을 실행하는 경우 이제 :.

run > node broadcast.js

후 인터넷의 경우에없는 응용 프로그램이 표시 해당 페이지 나는 그것이 다시 시작 페이지를 새로 고침 할 때 인터넷을 연결 한 후 (나는 수동으로 인터넷 연결) 그 과정은 요구에 따라 좋다.

하지만, 나는 그 같은 사용하여 컴파일 된 응용 프로그램을 그것은 나에게 오류를 제공하는 경우 :

어떤 오류가 나는 점점 오전 :

그래서 사람이 수정되어야 하는지를 제시하시기 바랍니다 수 있습니까? 내 시스템에서 잘 작동하지만 컴파일 된 응용 프로그램과 다른 사람에되도록 screenshot of error

이 외에도, 영원히 시스템의 세계로 설치해야합니다.

+0

에서 다음 사용 가능한,이 없다. – Paul

답변

0

이미 포트 8000 (앱의 다른 사본)에서 실행중인 것으로 보입니다. 귀하의 응용 프로그램 포트가 환경 변수 또는 명령 행 옵션을 통해 구성 가능한지 확인합니다. 마찬가지로 포트를 해제하려면 정상적으로 종료 할 수 있는지 확인하십시오.

영원히에 관해서는

, 전 세계적으로 설치하는 이유는 귀하의 오류 링크가 깨진 응용 프로그램과 패키지를하고 ./node_modules/.bin

+0

아니요, 전 세계적으로 시도하지 않고 exe에서 허용하지 않습니다. :( – Deep