Example #1
0
        E基本状态 查询服务状态()
        {
            ServiceControllerStatus __状态;

            try
            {
                __状态 = H服务管理.查询状态(Program.务名);
            }
            catch (M预计异常)
            {
                return(E基本状态.未安装);
            }
            catch (Exception ex)
            {
                H调试.记录异常(ex);
                throw new M预计异常("查询服务状态失败:{0}", ex.Message);
            }
            switch (__状态)
            {
            case ServiceControllerStatus.StartPending:
            case ServiceControllerStatus.Running:
                return(E基本状态.已启动);

            case ServiceControllerStatus.StopPending:
            case ServiceControllerStatus.Stopped:
                return(E基本状态.未启动);

            default:
                throw new ArgumentOutOfRangeException();
            }
        }
Example #2
0
 void do服务_安装_Click(object sender, EventArgs e)
 {
     H服务管理.安装(Program.务名, Program.序名);
     if (_刷新 != null)
     {
         _刷新();
     }
 }
Example #3
0
 void do启动_Click(object sender, EventArgs e)
 {
     HUI线程.异步执行(this, () =>
     {
         H服务管理.开启(Program.务名);
     }, () =>
     {
         if (_刷新 != null)
         {
             _刷新();
         }
     });
 }
Example #4
0
 void do关闭_Click(object sender, EventArgs e)
 {
     if (new F对话框_是否("确定要关闭吗?").ShowDialog() != DialogResult.Yes)
     {
         return;
     }
     HUI线程.异步执行(this, () =>
     {
         H服务管理.关闭(Program.务名);
     }, () =>
     {
         _刷新?.Invoke();
     });
 }
Example #5
0
 void do卸载_Click(object sender, EventArgs e)
 {
     if (new F对话框_是否("确定要删除吗?").ShowDialog() != DialogResult.Yes)
     {
         return;
     }
     HUI线程.异步执行(this, () =>
     {
         H服务管理.卸载(Program.务名);
     }, () =>
     {
         if (_刷新 != null)
         {
             _刷新();
         }
     });
 }
Example #6
0
        public static void 配置(IT服务端 __IT服务端)
        {
            H容器.注入 <IB名片_S, B名片_S>(true, false, "", __IT服务端);
            H容器.注入 <IB系统_S, B系统_S>(true, false, "", __IT服务端);
            H容器.注入 <IB状态_S, B状态_S>(true, false, "", __IT服务端);
            H容器.注入 <IBFTP_S, BFTP_S>(true, false, "", __IT服务端);

            var __版本号 = H程序配置.获取字符串("版本号");

            if (string.IsNullOrEmpty(__版本号))
            {
                __版本号 = H调试.查询版本();
            }
            H容器.取出 <IB名片_S>().初始化(
                new M名片 {
                称 = "GIS服务器", 描述 = "", 版本号 = __版本号, 版本时间 = H程序配置.获取字符串("版本时间")
            },
                new List <M参数>
            {
                new M参数("IP列表", HJSON.序列化(H网络配置.获取IP配置())),
                new M参数("操作系统", Environment.OSVersion.ToString()),
                new M参数("64位系统", Environment.Is64BitOperatingSystem.ToString()),
                new M参数("登录账号", Environment.UserName),
            });
            H容器.取出 <IB状态_S>().初始化(null, DateTime.Now);
            H容器.取出 <IBFTP_S>();
            H容器.取出 <IB系统_S>().初始化(() =>
            {
                H日志.记录提示("重启");
                H服务管理.重启("GIS服务器", new TimeSpan(0, 1, 0));
            }, () =>
            {
                H日志.记录提示("关闭");
                H服务管理.关闭("GIS服务器", new TimeSpan(0, 1, 0));
            }, () => new List <M版本记录>
            {
                //new M版本记录{ 版本号 = "1.0.0.0", 修改记录 = "xxx", 标签 = new List<string>{ "a", "b"}},
                //new M版本记录{ 版本号 = "1.0.1.0", 修改记录 = "yyy", 标签 = new List<string>{ "a1", "b1"}},
            });
        }