Я работаю над приложением Node JS.
В этом я должен проверить, подключен ли первый пользователь к Интернету или нет. Если да, то проверьте, KinectRuntime-v2.0_1409-Setup
установлен или нет.. и, кроме того, есть еще такие проверки. поэтому я использовал следующий код в своем сценарии входа:
Что я сделал:
broadcast.js: // файл входа, который мы используем для запуска приложения
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
});
Файл 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);
});
}
Я использую модуль enclose
, который компилирует приложение node js и создает файл .exe
. Теперь, если я запускаю приложение на своем локальном компьютере с помощью командной строки:
запустить > узел широковещательный.js
затем, если Интернет не найден, приложение отображает соответствующую страницу (тогда я подключаюсь к Интернету вручную) после подключения к Интернету, когда я обновляю страницу, он перезапускает процесс, что хорошо в соответствии с требованиями.
НО, когда я делаю то же самое, используя скомпилированное приложение, оно выдает мне ошибку:
Какую ошибку я получаю:
Так может ли кто-нибудь предложить, что должно быть изменено там?
Помимо этого, Forever должен быть установлен как глобальный в системе, чтобы он нормально работал в моей системе, но не в других с скомпилированным приложением.