使用NSSM将agent注册为windows系统服务说明(实现开机自动启动服务,隐藏窗口运行)

提示:agent和nssm所在路径尽量不要包含空格,否则可能会出现,注册系统服务完成后,不能启动成功
1、如果agent目录下有 regAgentService.bat 这个批处理脚本,直接点击运行就自动注册为系统服务了,出现如下信息,说明注册完成
D:\wgcloud-v3.5.4\agent
Administrator access is needed to install a service.
"Registration completed, please start the service  wgcloud-agent in the system service (enter services.msc for DOS command to open)"
"If the registration service fails or you want to remove the service, please view https://www.wgstart.com/help/docs32.html "
请按任意键继续. . .
完成后在【系统服务】中启动wgcloud-agent,其中的354是版本号,如果正在窗口模式运行agent,那先关闭运行窗口再注册服务
这样就注册完成了
如果没有这个脚本,则继续往下看手动注册
提示:怎么打开windows的系统服务呢?按下Win+R键,输入services.msc并回车,就好啦
2、如果想要移除wgcloud-agent系统服务,用dos命令进入到nssm目录或者agent目录,在cmd下运行命令,如下所示,先停止服务再删除

D:\wgcloud-v3.5.4\agent>nssm remove wgcloud-agent
3、手动使用dos命令注册系统服务
下载 nssm-2.24-101-g897c7ad.zip,如果是v3.4.4或以上版本的agent就不用下载了,安装包中本身已经包含有NSSM.exe,直接用就行
解压nssm-2.24-101-g897c7ad.zip,比如我们解压到C盘根目录(建议和agent放到同一目录下,因为注册服务后,NSSM不能删除,要持续用)
根据windows操作系统是64位或32位,cd到解压的C:\nssm-2.24-101-g897c7ad\win64或C:\nssm-2.24-101-g897c7ad\win32目录,或进入到agent目录,我们要使用nssm.exe注册服务

C:\Users\ethan>cd C:\nssm-2.24-101-g897c7ad\win64
	
将wgcloud-agent-release.exe注册为系统服务,cmd下运行命令如下所示

C:\nssm-2.24-101-g897c7ad\win64>nssm install wgcloud-agent E:\wgcloud-v3.5.4\agent\wgcloud-agent-release.exe
	
执行完成后提示:Service "wgcloud-agent-release" installed successfully!,说明服务安装成功
提示:将E:\wgcloud-v3.5.4\agent\wgcloud-agent-release.exe替换为自己的agent实际路径,且一定填写绝对路径,不要用相对路径
注册成功后,就可以在系统服务中启动服务wgcloud-agent-release了,然后把原来启动的agent黑窗口关闭即可
4、如果注册出现以下错误,请先退出所有的杀毒软件、安全软件,重新打开cmd,再操作就好了。或者把nssm.exe的完整路径加到安全软件的白名单。注册完成服务后可以再打开杀毒软件
Error setting startup parameters for the service
5、建议把系统服务wgcloud-agent-release设置为【自动延迟启动】
注意:刚注册完服务,服务不会自动启动,需要先手动把服务启动下,就是右击->【启动】就可以了