我需要服务能停得够久。大约5-10分钟。现在,在windows 10上,我的服务系统在60秒后就会停止运行,而不会等待它正确完成。在使用C#函数RequestAdditionalTime时,看到了类似的问题。但是我需要API上的C++实现。
在注册表中设置键值不会影响设置为300000的HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\WaitToKillService。
发布于 2019-02-25 08:03:28
您不应该处理全局注册表设置。
停止服务时,请使用SetServiceStatus调用SERVICE_STOP_PENDING,并将dwCheckPoint和dwWaitHint设置为适当的值。并根据dwWaitHint的文档多次调用ServServiceStatus,直到您完成服务并停止服务(SetServiceStatus(h, SERVICE_STOPPED, ...))。
https://stackoverflow.com/questions/54860878
复制相似问题