我正在尝试控制应用程序中的服务。通过 StartService ( MSDN ) 启动服务工作正常,服务需要大约 10 秒才能启动,但在调用 StartService 后,它会立即将控制权交还给主应用程序。
但是,当通过 ControlService ( MSDN ) 停止服务时 - AFAIK 没有 StopService - 它会完全阻塞主应用程序,直到服务停止,这大约需要 10 秒。
Start: StartServiceW( handle, 0, NULL)
Stop: ControlService( handle, SERVICE_CONTROL_STOP, status )
有没有办法非阻塞/异步停止 Windows 服务?