使用NSSM安装.exe文件成Windows服务(.bat文件操作)

全屏阅读
  • 基本信息
  • 作者:
  • 作者已发布:917篇文章
  • 发布时间:2022年11月15日 16:26:42
  • 所属分类:开发软件相关
  • 阅读次数:315次阅读
  • 标签:

之前查到的nssm安装Windows服务都是用 nssm install <servicename> ,但是会弹出窗口,需要填写路径参数

使用NSSM把任意exe程序注册成Windows服务

下面介绍一种,直接使用.bat命令就可以实现的安装方式(本文使用的.exe文件是,.net core项目发布的一个网站项目,其他的应该也是一样的原理

1、下载nssm, download

2、解压后,把nssm.exe文件复制到,发布完项目的文件夹里(就是放.exe文件的那个文件夹)

3、创建install.bat文件(名字随便取都可以),文件中内容

@ echo off

@echo 添加环境变量
set mypath=%~dp0
set path=%mypath%;%path%


@echo 开始安装【GDSM服务】
call nssm install GDSMService %~dp0GDSMPlateForm.exe

echo wscript.sleep 5000 > delay.vbs 
cscript //nologo delay.vbs & del delay.vbs 
@echo 开始启动【GDSM服务】
call nssm start GDSMService

pause

4、右键install文件,创建快捷方式(快捷方式名字随便取),修改为管理员权限打开

5、双击打开快捷方式,就会自动安装服务,并开启服务

6、查看服务

7、(如果需要)删除服务,建议先关闭服务,再删除

1)管理员身份打开cmd,删除命令:sc delete 服务名  如:sc delete GDSMService

 

注意:

1)在执行nssm命令之前,一定要先添加nssm.exe的环境变量,否则会出下“找不到nssm命令”

2)安装服务和启动服务要使用call,不能用start或者不写,否则也会出现“找不到nssm命令”,原因是使用start或者不写,添加的环境变量没有立即生效

这里被坑了很久,之前都是不写【nssm install GDSMService】,然后发现环境变量一直不生效,也试过重启explorer,都不行

3)添加环境变量(临时环境变量,等服务安装完成,环境变量不存)

nssm install GDSMService C:\Windows\Setup\DSMPlateForm.exe   完全没问题
但是,如果想要使用当前文件夹的路径呢?
 正常应该是这样的, nssm install GDSMService %~dp0GDSMPlateForm.exe  然而就是不行(猜测原因:应该是nssm没有在环境变量里面,没有资格使用系统的变量%~dp0)
解决办法:先添加nssm.exe的环境变量就可以了


顶一下
(0)
100%
订阅 回复
踩一下
(0)
100%
» 郑重声明:本文由mpxq168发布,所有内容仅代表个人观点。版权归恒富网mpxq168共有,欢迎转载, 但未经作者同意必须保留此段声明,并给出文章连接,否则保留追究法律责任的权利! 如果本文侵犯了您的权益,请留言。

目前有 0 条留言 其中:访客:0 条, 博主:0 条

给我留言

您必须 [ 登录 ] 才能发表留言!