注册frpc为windows服务,可在未登录用户时启动,工具--nssm详解
2024-01-04 11:27 狼人:-) 阅读(1093) 评论(0) 编辑 收藏 举报说明:
在Windows 中配置启动项仅是在用户登录后运行。在登录前要启动就需要将其配置为“服务”。
简介:
之前介绍过如何使用frp进行端口转发和二级域名自定义,方便公司进行统一管理和监控。
但在实际生产过程中,开发人员发现frpc的窗口为应用窗口,极易出现误操作而关闭应用窗口,为了解决此问题,建议将frpc注册为windows服务,方便使用。
此方法使用nssm(稳定版本)工具将.EXE文件注册为Windows服务
1. 下载并解压压缩包,使用cmd进入对应系统版本工具的路径。(请使用管理员身份运行cmd)
使用cmd进入工具路径后可键入nssm查看工具使用参数,或直接双击查看工具使用参数。
2. 在cmd中键入命令,进入服务编辑页面:
1
|
nssm install serviceName |
3. 设置服务路径地址
如下所示点击Path,为需要注册为服务的应用选择所在路径。Starup directory将自动生成。
注:图中所示的Arguments参数请不要设置否则会造成服务开启失败。
4.设置详details
设置服务的描述信息
5.设置log on
勾选Allow service to interact with desktop选项
5.设置I / O选项卡
在frpc文件夹下创建日志输出文件,并选择。
其他选项卡信息使用默认设置即可。
nssm 常用命令
1
2
3
4
|
nssm install serviceName #安装服务 nssm edit serviceName #使用GUI编辑已安装的服务 nssm restart serviceName #重新启动服务 nssm remove serviceName #删除已安装的服务 |
感谢博主分享:
nssm详解
零、文章目录
一、nssm简介
nssm是一个服务封装程序,它可以将普通exe程序封装成服务,实现开机自启动,同类型的工具还有微软自己的srvany,不过nssm更加简单易用,并且功能强大。
它的特点如下:
- 支持普通exe程序(控制台程序或者带界面的Windows程序都可以)
- 安装简单,修改方便
- 可以自动守护封装了的服务,程序挂掉了后可以自动重启
官网地址:https://nssm.cc/
二、nssm配置详解
1、下载地址
百度网盘:https://pan.baidu.com/s/12J0jJF9_7-bstH1eGMI8Lg?pwd=1234
2、解压压缩包,根据系统位数选择64或32位程序
3、打开命令行,运行nssm程序
管理员权限打开命令行工具,切换到nssm.exe所在路径,运行 nssm install,打开程序配置界面
配置项说明:
-
Path:运行应用程序的程序
-
Startup directory:应用程序所在的目录
-
Arguments:应用运行的参数
-
Service name:生成服务的名称
最后点击install service 完成windows服务安装,在windows服务列表就能看到创建的服务了。
4、常用命令
- nssm install servername //创建servername服务,弹出配置界面
- nssm start servername //启动服务
- nssm stop servername //暂停服务
- nssm restart servername //重新启动服务
- nssm remove servername //删除创建的servername服务
- nssm edit servername//更改servername服务,弹出修改界面
- nssm set servername 参数名 参数值 //设置服务参数值
- sc delete servername//windows删除服务命令
- 直接使用windows的服务管理也可以实现服务的操作,服务右键
属性 - 恢复
即可设置服务挂掉重启等内容。
三、实战:将应用做成服务
1、程序说明
这里演示将net6的web项目制作成windows服务
应用的启动命令是:dotnet WebApplication_nssm.dll --urls=http://*:8888/ --port=8888
2、安装服务
nssm install
- 1
- Path:
C:\Program Files\dotnet\dotnet.exe
- Startup directory:
D:\TechLearn\001、Tools--nssm\WebApplication_nssm\bin\Debug\net6.0
- Arguments:
WebApplication_nssm.dll --urls=http://*:8888/ --port=8888
- Service name:
webapp8888
最后点击install service 完成windows服务安装,在windows服务列表就能看到创建的服务了。
3、管理服务
(1)启动服务
D:\nssm-2.24\win64>nssm start webapp8888
webapp8888: START: 操作成功完成。
- 1
- 2
(2)关闭服务
D:\nssm-2.24\win64>nssm stop webapp8888
webapp8888: STOP: 操作成功完成。
- 1
- 2
(3)重启服务
如果服务未启动就会直接启动,启动的会重启。
D:\nssm-2.24\win64>nssm restart webapp8888
webapp8888: STOP: 服务尚未启动。
webapp8888: START: 操作成功完成。
D:\nssm-2.24\win64>nssm restart webapp8888
webapp8888: STOP: 操作成功完成。
webapp8888: START: 操作成功完成。
- 1
- 2
- 3
- 4
- 5
- 6
- 7
(4)修改服务
输入命令,修改配置,不能修改服务名
D:\nssm-2.24\win64>nssm edit webapp8888
- 1
(5)删除服务
删除有二次确认,删除之后服务就找不到了,需要重新安装
D:\nssm-2.24\win64>nssm remove webapp8888
Service "webapp8888" removed successfully!
- 1
- 2
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南