一个乐于分享的博客
关注互联网折腾服务器分享码农的日常

NSSM-将可执行文件升级成系统服务(Windows)

NSSM-将可执行文件升级成系统服务(Windows)

将EXE的可执行文件转换成进程来运行,这种需求可能比较小众。首先要了解一下可执行文件和服务有什么区别:

  • 在系统登录的情况下,双击打开运行的程序就算作可执行文件,随着关闭窗口或系统注销,进程也将结束。
  • 服务是只要系统启动就会随之运行的进程,比如系统自带的Server或IIS都是服务。

知道了大概的区别,将可执行文件转换为服务就显得有必要了。针对一些需要长时间随系统运行的程序,为了获得更稳定的运行状态,就可以将它转变为服务,在后台运行。而岩兔站这次实验的对象是无视所有防火墙的内网穿透软件frp。这款软件需要随机启动,并且没有操作界面,非常适合变成服务,在后台运行。

NSSM使用说明

这次介绍的软件叫作NSSM,可以一键将各种命令行程序转换为服务。

下载完成后得到一个nssm.exe文件,使用时以管理员身份在命令行中定位到该文件,然后执行命令

基本操作

nssm install <servicename>

之后会弹出设置界面,需要做的就是

  1. 设置可执行文件
  2. 增加执行参数
  3. 设置服务名称

NSSM-将可执行文件升级成系统服务(Windows)

后续其他标签中还可以设置描述、自启动、日志等进程的信息,但都不是必须项。

最后点击“Install service”完成服务安装。

再转到任务管理器中的“服务”选项卡,可见ftp服务已经添加进来了,右键“开始”启动服务即可。

NSSM-将可执行文件升级成系统服务(Windows)

最后转到进程中,可见frpc服务已经正常启动了。

NSSM-将可执行文件升级成系统服务(Windows)

以上界面操作可以转换成一行代码执行

nssm install <servicename> <app> [<args>...]

在windows平台使用frp最大的问题是自动启动经常失效,导致网络连不通。将程序做到服务中,每次开机自启动,再也不担心启动不正常的问题。

扩展操作

以图形界面编辑现有的服务

nssm edit <servicename>

删除服务

nssm remove <servicename> confirm

管理服务状态

nssm start <servicename>
nssm stop <servicename>
nssm restart <servicename>
nssm status <servicename>
nssm rotate <servicename>

软件下载

官方地址:https://nssm.cc/

软件下载:稳定版

转载务必注明出处:岩兔站 » NSSM-将可执行文件升级成系统服务(Windows)
赞 (1) or 打赏

讨论区 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址