1. 首页 > 手游资讯

nssm 钠是什么东西

作者:admin 更新时间:2024-10-26
摘要:所以我最终放弃了注册表自启动的方式,转而将程序注册为系统服务。三种方式简介(1)sc命令这是Windows自带的命令。您可以将exe注册为系统服务。命令格式也很,nssm 钠是什么东西

 

各位老铁们,大家好,今天由我来为大家分享nssm,一个强大的工具,可以将任何exe注册为系统服务,以及的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!

所以我最终放弃了注册表自启动的方式,转而将程序注册为系统服务。

三种方式简介

(1) sc 命令

这是Windows自带的命令。您可以将exe注册为系统服务。命令格式也很清晰。结构如下:

sc create SVN binpath='exe程序的完整路径' displayname='服务名称' start=auto

其中:

sc create:是sc注册服务命令SVN :是你给服务起的名字binpath :是exe文件和命令参数的路径displayname:是服务的别名start:是否自动启动

可以说,这是一个非常绿色环保的命令,无需借助第三方工具即可轻松实现。然而,sc命令有一个致命的缺点。这个缺点是它注册的exe程序必须符合系统服务规范,否则无法启动。我只是个新手,没有时间去研究系统服务的规范,所以只能说再见了。

(2)神器instsrv+srvany

这是一个神奇的组合,是从Windows 2003的工具包中提取出来的。它已经有近20年的历史了,但仍然可以使用。

instsrv用于注册系统服务,srvany用于加载该服务引用的第三方exe程序。

操作命令如下:

instsrv.exe 注册的服务名称c:\abc\srvany.exe

这只是第一步。然后需要在注册表中添加Parameters子键,添加两个键值AppDirectory和AppParameters。详细的你可以自行搜索。

由于这个组合太旧,在Win10上存在兼容性问题。具体来说,instsrv注册服务时添加的srvany的绝对路径不带双引号,如下:

c:\abc\srvany.exe

Win10可以识别的格式是这样的:

'c:\abc\srvany.exe'

区别就在于一对双引号,花了我一整天的时间才搞清楚。太令人困惑了。

但上述问题并不是致命的。致命的是这个神奇的组合无法保护进程。只需轻轻一按,我们想要在后台运行的程序就说再见了。虽然我的程序有一个可以重启主程序的daemon组件,但是loader本身的功能还是比较弱。自己用也可以,但是发布给用户下面的nssm更靠谱。

(3)nssm,全称non-sucking server manager

NSSM是一个服务封装程序,可以将普通的exe程序封装成服务,使其可以像windows服务一样运行。它可以将几乎任何exe封装成系统服务(那些带有界面和对话框的不适合这样做)。还可以保护第三方程序不被杀,而且还具有图形化操作界面,方便新手使用。

nssm的简单范例

nssm的命令行操作非常简单,两步即可加载应用程序。以下是将D:\abc.exe 注册为系统服务的示例。

封装第三方应用来服务系统:

nssm 安装服务名称D:\abc.exe

执行完这一步后,nssm会自动在注册表中创建Parameters子键,并添加两个键值:AppDirectory和AppParameters,所以如果没有其他特殊要求,这句话就可以了。

启动第三方程序

nssm 启动服务名称

Tips:上面提到的“服务名称”最好使用英文或者数字,这样就不会出现兼容性问题。

其他常用命令有:

修改服务名称:nssm set DisplayName 用户查看时使用的服务名称

修改服务描述:nssm set Description。这是该服务的文字描述。支持中文。

删除服务:nssm删除服务名称确认

其他更多参数的使用请参考官网: