/// <summary> /// 构造 /// </summary> /// <param name="service">服务类</param> /// <param name="args">服务参数</param> public BasicServiceRunner(BasicService service, string[] args) { #region 去掉关闭菜单 try { int hwnd = (int)System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle; int hmenu = PInvoker.GetSystemMenu(hwnd, false); bool bsucc = PInvoker.RemoveMenu(hmenu, 0xF060, 0); } catch { } #endregion #region 初始化 try { _Service = service; _Service.InitInstance(args); _Service.IsRunning = true; } catch (Exception e) { Console.WriteLine("Abnormal Application Termination :{0}\r\nStackTrace : \r\n{1}", e.Message, e.StackTrace); try { HTEventLog.InitFileLog(@"ServerEvents.log"); HTEventLog.SaveLog(HTEventLog.LogTypeEnum.错误, string.Format("Abnormal Application Termination : {0}\r\nStackTrace : \r\n{1}", e.Message, e.StackTrace), _Service.GetAssemblyName()); } catch { } //Network.NetworkManager.Instance.StopRunNetworkUpdate(); _Service.IsRunning = false; return; } #endregion }
/// <summary> /// 通知服务器关闭 /// </summary> /// <param name="param">关闭参数</param> /// <param name="sessionID"></param> public void OnShutDownSvr(string param) { //关闭服务 SvLogger.Info("OnShutDownSvr : param={0}", param); BasicService.RecvCenterServerCloseCommand(); }