gpt4 book ai didi

使用 nssm 的 Windows 服务正在运行,但不适用于 Windows SC

转载 作者:可可西里 更新时间:2023-11-01 10:16:56 29 4
gpt4 key购买 nike

我应该将 GoLang 编译文件 .exe 转换为 Windows 中的服务,但由于该服务是从外部使用 9 个参数执行的,所以我决定使用 SC 将 .exe 作为服务,我的语法是,

sc create myservice binPath= "\"PATH\file.exe\" -param1=value -param2=value -param3=value...-param9=value" displayname= "MyServer"  start= auto

服务创建成功,但是当我尝试启动它时,它失败了“服务没有及时响应”..

但是当我使用 nssm 语法创建相同的服务时,

nssm install myservice "PATH\file.exe" -param1=value -param2=value -param3=value...-param9=value

它工作正常,我从我的服务得到响应,我不知道问题是出在 SC 中的语法还是我的服务...

我什至尝试了很多可能的方法,例如删除\"并直接提供参数,例如 binPath= "PATH/file.exe -param1=value -param2=value...param9=value"但它没有用,我也尝试在引号内传递参数,它也没有用:(任何帮助将不胜感激。

最佳答案

虽然 SC 很乐意将任何可执行文件安装为 Windows 服务,但它应该只用于安装已经是 Windows 服务的可执行文件。如果您使用 SC 安装常规 exe,您的服务将失败并显示 Error 1053当您尝试启动它时。你的 Go exe,它没有实现 Windows 服务接口(interface),成为这种情况的受害者。

关于使用 nssm 的 Windows 服务正在运行,但不适用于 Windows SC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38067996/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com