Service NSSM-使用多个参数从命令行安装服务
我正在尝试创建一个批处理文件来创建我的服务,并且正在为如何准确列出每个参数而苦苦挣扎。我对此做了很多研究,但似乎找不到正确的语法。这就是我现在拥有的:Service NSSM-使用多个参数从命令行安装服务,service,command-line,arguments,nssm,Service,Command Line,Arguments,Nssm,我正在尝试创建一个批处理文件来创建我的服务,并且正在为如何准确列出每个参数而苦苦挣扎。我对此做了很多研究,但似乎找不到正确的语法。这就是我现在拥有的: nssm install MDHIS_WebClient "%MDHIS2_HOME%/MDHIS_WebClient.cmd" AppDirectory %MDHIS2_HOME% DisplayName MDHIS_WebClient Start SERVICE_AUTO_START DependOnService MSS
nssm install MDHIS_WebClient "%MDHIS2_HOME%/MDHIS_WebClient.cmd" AppDirectory %MDHIS2_HOME% DisplayName MDHIS_WebClient Start SERVICE_AUTO_START DependOnService MSSQLSERVER AppNoConsole 1 AppStopMethodConsole 30000
这是可行的,但参数被忽略。有人能给我举一个正确语法的例子吗?您现在使用的命令在执行程序时会将程序路径后的所有项目(从
AppDirectory
开始)作为参数传递给程序。显然,这不是你想要的行为
要建立对nssm
有意义的参数,必须为每个参数运行单独的nssm set
命令。在这种情况下,您将使用此命令创建服务并定义程序的路径:
nssm install MDHIS_WebClient "%MDHIS2_HOME%/MDHIS_WebClient.cmd"
接下来是建立各种参数的一系列命令:
nssm set MDHIS_WebClient AppDirectory %MDHIS2_HOME%
nssm set MDHIS_WebClient DisplayName MDHIS_WebClient
nssm set MDHIS_WebClient Start SERVICE_AUTO_START
nssm set MDHIS_WebClient DependOnService MSSQLSERVER
nssm set MDHIS_WebClient AppNoConsole 1
nssm set MDHIS_WebClient AppStopMethodConsole 30000
为了安全起见,我会将
Start
参数移到该系列的末尾,以防止nssm
在其余参数(DependOnService
,AppNoConsole
和AppStopMethodConsole
)建立之前启动服务的可能性。另一个方法。。。。我将nssm.exe设置为以管理员身份运行。现在,它会在批处理中的每个set调用中提示adminn。但至少它不需要快捷方式或其他方式来打开管理控制台。据我所知,这并不好,但更简单。nssm网站让它看起来像是第一个命令会打开我不想要的GUI,因为这个脚本将是安装程序的一部分,但实际上它工作得很好,谢谢!