我原本应该将GoLang编译文件.exe作为服务转换为Windows,但由于服务是从外部执行的9个参数所以我决定使用SC将.exe作为服务,我的语法是,< / p>
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"
但它没有工作,我也尝试传递引号内的参数,它也没有工作:(任何帮助将不胜感激。
答案 0 :(得分:1)
虽然SC很乐意将任何可执行文件安装为Windows服务,但它只能用于安装已经是Windows服务的可执行文件。如果您使用SC安装常规exe,当您尝试启动时,您的服务将失败并显示Error 1053。您的Go exe(未实现Windows服务界面)成为这种情况的受害者。