Я делаю простой сервер эха, который я хочу запустить как сервис под окнами. вот кодJXcore родное приложение как служба windows
var fs=require('fs');
var net = require('net');
var server = net.createServer(function(c) { //'connection' listener
console.log('client connected');
c.on('end', function() {
console.log('client disconnected');
});
c.write('hello\r\n');
c.pipe(c);
});
server.listen(8124, function() { //'listening' listener
console.log('server bound');
});
var fd=fs.openSync('log.txt', 'a');
fs.writeSync(fd, 'START\r\n');
fs.closeSync(fd);
process.on('SIGINT', function (par){
var fd=fs.openSync('log.txt', 'a');
fs.writeSync(fd, 'SIGINT ('+par+")\r\n");
fs.closeSync(fd);
process.exit(1);
});
process.on('exit', function (code){
var fd=fs.openSync('log.txt', 'a');
fs.writeSync(fd, 'EXIT ('+code+")\r\n");
fs.closeSync(fd);
});
Следующая я скомпилирован с JXcore как:
jx package echoserver.js "echoserver" -native
Затем исполняемый файл запустить из консоли или EXPLORER двойной щелчок и делать свою работу! ХОРОШО!
Теперь, когда инструмент SC окна, я создать службу
sc create echosvr full_path_to\echoserver.exe
И echosvr теперь корректно указан в закладке службы окон менеджер задач.
Плохое приходит сейчас: я пытаюсь запустить службу несколькими способами, но я всегда получаю сообщение, которое сообщает мне, что служба не ответила на запрос запуска или контроля своевременно.
что я пропустил? Любое предложение?
Я предполагаю, используя процесс в качестве службы Windows, требует дополнительных функций в этом приложении. – BigbangO
Я предполагаю то же самое ... Я думаю, что я должен попробовать некоторую оболочку, такую как [nssm] (https://nssm.cc/usage) .. Кажется, он делает то, что мне нужно. Я попробую, тогда я опубликую результаты – tmx976