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(); } }
void do服务_安装_Click(object sender, EventArgs e) { H服务管理.安装(Program.务名, Program.序名); if (_刷新 != null) { _刷新(); } }
void do启动_Click(object sender, EventArgs e) { HUI线程.异步执行(this, () => { H服务管理.开启(Program.务名); }, () => { if (_刷新 != null) { _刷新(); } }); }
void do关闭_Click(object sender, EventArgs e) { if (new F对话框_是否("确定要关闭吗?").ShowDialog() != DialogResult.Yes) { return; } HUI线程.异步执行(this, () => { H服务管理.关闭(Program.务名); }, () => { _刷新?.Invoke(); }); }
void do卸载_Click(object sender, EventArgs e) { if (new F对话框_是否("确定要删除吗?").ShowDialog() != DialogResult.Yes) { return; } HUI线程.异步执行(this, () => { H服务管理.卸载(Program.务名); }, () => { if (_刷新 != null) { _刷新(); } }); }
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"}}, }); }