Пример #1
0
        /// <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
        }
Пример #2
0
 /// <summary>
 ///  通知服务器关闭
 /// </summary>
 /// <param name="param">关闭参数</param>
 /// <param name="sessionID"></param>
 public void OnShutDownSvr(string param)
 {
     //关闭服务
     SvLogger.Info("OnShutDownSvr : param={0}", param);
     BasicService.RecvCenterServerCloseCommand();
 }