Service 博尔兰C++;:Windows服务如何自行关闭? 我在Borland C++ Builder中编写了一个旧的Windows服务,需要在一定条件下扩展,以便在某些条件下关闭它。
如果我通过服务控制管理器手动关闭服务,它将正常关闭,不会出现任何问题。所以我想,调用Service 博尔兰C++;:Windows服务如何自行关闭? 我在Borland C++ Builder中编写了一个旧的Windows服务,需要在一定条件下扩展,以便在某些条件下关闭它。,service,c++builder,shutdown,Service,C++builder,Shutdown,如果我通过服务控制管理器手动关闭服务,它将正常关闭,不会出现任何问题。所以我想,调用this->DoShutdown()就足够了(此是从t服务派生的实例)。但这会使服务处于“正在关闭…”状态。之后我可以调用ExitProcess,但这会在事件日志中创建一个条目,表明服务已意外关闭 那么,在Borland C++窗口服务关闭时,什么是正确的方式?< /P> < P> DujutUnDutter()/Cuffor>在代码“>服务> >当它在关闭Windows时从SCM接收到“服务”控制“关闭”/
this->DoShutdown()代码>就足够了(此
是从t服务
派生的实例)。但这会使服务处于“正在关闭…”状态。之后我可以调用ExitProcess
,但这会在事件日志中创建一个条目,表明服务已意外关闭
那么,在Borland C++窗口服务关闭时,什么是正确的方式?< /P> < P> <代码> DujutUnDutter()/Cuffor>在代码“>服务> <代码> >当它在关闭Windows时从SCM接收到“<代码>服务”控制“关闭”/代码>请求时调用。code>DoShutdown()
不打算在用户代码中直接调用
让服务自行终止的最简单方法是调用其Controller()
方法(直接或通过其全局ServiceController()
函数),在CtrlCode
参数中传递service\u CONTROL\u STOP
或service\u CONTROL\u SHUTDOWN
。让服务像处理来自SCM的请求一样处理请求,这样它就可以相应地进行操作。DoShutdown()
在Windows关闭时,当服务从SCM接收到服务控制关闭请求时,调用DoShutdown()
不打算在用户代码中直接调用
让服务自行终止的最简单方法是调用其Controller()
方法(直接或通过其全局ServiceController()
函数),在CtrlCode
参数中传递service\u CONTROL\u STOP
或service\u CONTROL\u SHUTDOWN
。让服务像处理来自SCM的请求一样处理请求,这样它就可以相应地执行操作