返回

如何将Node.js命令启动为Windows服务运行

前端

简介

有时,JavaScript需要做一件持续进行的事务,用cmd启动就必须保持窗口不被关闭,这样肯定不是万全之策,这时候我们可以尝试将node命令启动为windows服务运行。Node.js是一个跨平台的JavaScript运行时环境,允许您使用JavaScript编写服务器端应用程序。Windows服务是一种在后台运行的进程,即使没有用户登录,它也可以继续运行。

先决条件

  • Node.js已安装
  • 管理员权限
  • node-windows模块

安装node-windows模块

npm install -g node-windows

创建服务

要创建服务,您需要使用node-windows模块中的Service类。以下是如何创建一个名为“MyService”的服务:

const Service = require('node-windows').Service;

// 创建一个新的服务
const svc = new Service({
  name: 'MyService',
  description: 'This is a sample service.',
  script: 'C:\\path\\to\\my\\script.js'
});

// 监听服务事件
svc.on('install', () => {
  console.log('Service installed.');
});

svc.on('uninstall', () => {
  console.log('Service uninstalled.');
});

// 安装服务
svc.install();

编辑服务

要编辑服务,您需要使用service命令。以下是如何编辑“MyService”服务的说明:

sc config MyService start= auto

这将把服务的启动类型设置为“自动”,这意味着它将在系统启动时自动启动。

启动服务

要启动服务,您需要使用net start命令。以下是如何启动“MyService”服务:

net start MyService

停止服务

要停止服务,您需要使用net stop命令。以下是如何停止“MyService”服务:

net stop MyService

结论

在本教程中,您学习了如何将Node.js命令启动为Windows服务运行。这允许您创建在后台运行的应用程序,即使没有用户登录,它们也可以继续运行。