我调用了命令 1 sc.exe create myservice binpath="C:\bp.exe" start=auto
2 sc.exe start myservice
无论我创建什么服务,我总是会遇到这样的错误:
StartService FAILED 1053
The service did not respond to the start or control request in a timely fashion.
。
服务功能,代码:
package main
import (
"fmt"
)
func main() {
fmt.Println("HELLO")
var s string
fmt.Scanln(&s)
}
如果我想启动另一项服务,例如:defragsvc Optimize Driver
此服务已成功启动!问题出在哪儿?
答案 0 :(得分:0)
问题出在那个
该服务未及时响应启动或控制请求。
Windows服务 - 与"常规"不同。程序 - 应该能够参与某些" procotol"通过某些Win32 API调用实现。 基本上任何声称是Windows服务的程序都应该由服务管理器加载到"钩入"服务子系统通过调用一些Win32 API函数,然后明智地响应来自该服务管理器的回调。 这些回调就是所谓的"控制请求"在错误消息中。
解决问题的方法是扭转方法: 而不是抨击尝试随机事物的问题,
获取文档并熟悉Windows服务的实现方式及其交互方式 与服务经理。
研究您用于将程序转换为正确的Windows服务的Go软件包的API,并查看它如何映射 根据您在步骤(1)中获得的知识。
如果在此之后,您仍无法使解决方案正常工作, 创建一个MCVE并使用它 提出另一个具体的问题。