private void Form1_Shown(object sender, EventArgs e) { try { ShowMsg(RemoteConnect.ConnectState(_sjmyHelper.Site, _sjmyHelper.Account, _sjmyHelper.Password)); ShowMsg(RemoteConnect.ConnectState(@"\\192.168.9.179", "blacknull", "shangjia!@#123.idc1")); ShowMsg(RemoteConnect.ConnectState(@"\\172.24.140.83", "blacknull", "IDC2.passwd*()")); Directory.SetCurrentDirectory(@"D:\developer"); const int port = 6000; // 创建监听套接字,使用ip4协议,流式传输,tcp链接 _sokWatch = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); // 绑定端口 // 获取网络节点对象 var address = IPAddress.Parse(get64segmentIP.LocalIp); var endPoint = new IPEndPoint(address, port); // 绑定端口(其实内部 就向系统的端口表中注册了一个端口,并指定了当前程序句柄) _sokWatch.Bind(endPoint); // 设置监听队列,指限制同时处理的连接请求数,即同时处理的客户端连接请求。 _sokWatch.Listen(10); // 开始监听,调用监听线程 执行 监听套接字的监听方法。 _thrWatch = new Thread(WatchConncting) { IsBackground = true }; _thrWatch.Start(); ShowMsg("服务器已启动!"); } catch (SocketException soex) { ShowMsg("异常:" + soex); } catch (Exception ex) { ShowMsg("异常:" + ex); } }
/// <summary> /// 检测到任务后执行---- /// </summary> private void DetermineSend() { while (true) { if (_sjmyHelper.TaskCheck) { ShowMsg("查询到任务!!!!"); _sjmyHelper.ProjectSite = $@"D:\developer\{_sjmyHelper.Gnpy}"; // 复制初始库,也要通过GNPY区分初始库 ShowMsg(RemoteConnect.ConnectState(@"\\172.24.140.83", "blacknull", "IDC2.passwd*()")); ShowMsg(RemoteConnect.ConnectState(@"\\192.168.9.179", "blacknull", "shangjia!@#123.idc1")); ShowMsg("开始复制初始库"); var copyInitLog = _sjmyHelper.CopyInitial(_sjmyHelper.Gnpy, _sjmyHelper.AppSrc); ShowMsg(copyInitLog); if (copyInitLog != "初始库复制完成") { ShowMsg("初始库复制异常, 终止任务"); Process.Start( $@"{_sjmyHelper.ProjectSite}\data\lib\99uMessage.exe", $@"{_sjmyHelper.Uid} 测试完成--推送IP:192.168.64.105,初始库复制异常,终止任务"); _sjmyHelper.SetScriptFlog(2); Restart(); return; } // 刷库操作 switch (_sjmyHelper.Gnpy) { case "sjmy": if (_sjmyHelper.GetSqlPath() != string.Empty) { if (!_sjmyHelper.intoSQL($@"{_sjmyHelper.GetSqlPath()}")) { ShowMsg("刷库异常,终止任务。"); Process.Start( $@"{_sjmyHelper.ProjectSite}\data\lib\99uMessage.exe", $@"{_sjmyHelper.Uid} 测试完成--推送IP:192.168.64.105,刷库错误,任务已结束"); _sjmyHelper.SetScriptFlog(2); Restart(); return; } } _sjmyHelper.intoSQL($@"{_sjmyHelper.ProjectSite}\main\monthcardinit.sql"); _sjmyHelper.intoSQL($@"{_sjmyHelper.ProjectSite}\main\rechargeweal.sql"); _sjmyHelper.intoSQL($@"{_sjmyHelper.ProjectSite}\main\updateSql_{_sjmyHelper.Gnpy}.sql"); ShowMsg("已完成刷库操作"); break; case "xsjmy": if (_sjmyHelper.GetSqlPath() != string.Empty) { if (!_sjmyHelper.intoSQL($@"{_sjmyHelper.GetSqlPath()}")) { ShowMsg("刷库异常,终止任务。"); Process.Start( $@"{_sjmyHelper.ProjectSite}\data\lib\99uMessage.exe", $@"{_sjmyHelper.Uid} 测试完成--推送IP:192.168.64.105,刷库错误,任务已结束"); _sjmyHelper.SetScriptFlog(2); Restart(); return; } } _sjmyHelper.intoSQL($@"{_sjmyHelper.ProjectSite}\main\monthcardinit.sql"); _sjmyHelper.intoSQL($@"{_sjmyHelper.ProjectSite}\main\rechargeweal.sql"); _sjmyHelper.intoSQL($@"{_sjmyHelper.ProjectSite}\main\updateSql_{_sjmyHelper.Gnpy}.sql"); ShowMsg("已完成刷库操作"); break; case "myht": _sjmyHelper.intoSQL($@"{_sjmyHelper.ProjectSite}\main\userinfo.sql"); _sjmyHelper.intoSQL($@"{_sjmyHelper.ProjectSite}\main\mynfkuaice.sql"); if (_sjmyHelper.GetSqlPath() != string.Empty) { if (!_sjmyHelper.intoSQL($@"{_sjmyHelper.GetSqlPath()}")) { ShowMsg("刷库异常,终止任务。"); Process.Start( $@"{_sjmyHelper.ProjectSite}\data\lib\99uMessage.exe", $@"{_sjmyHelper.Uid} 测试完成--推送IP:192.168.64.105,刷库错误,任务已结束"); _sjmyHelper.SetScriptFlog(2); Restart(); return; } } _sjmyHelper.intoSQL($@"{_sjmyHelper.ProjectSite}\main\updateSql_myht.sql"); break; } // apk解析 _sjmyHelper.ApkAnalysis(); ShowMsg($"apk解析完成:ApkPackage = {_sjmyHelper.ApkPackage},ApkVersion = {_sjmyHelper.ApkVersion}"); // 运行换库脚本 ShowMsg("开始执行换库操作"); _sjmyHelper.RunCmdPython($@"{_sjmyHelper.ProjectSite}\data\script\servercase\sqlconfig.py", _sjmyHelper.AppSrc); _sjmyHelper.RunCmdPython($@"{_sjmyHelper.ProjectSite}\data\script\servercase\server.py", _sjmyHelper.GetSeversion(), _sjmyHelper.GetNpcVer()); ShowMsg("换库操作完成,服务器若开启失败请检查pythonSyslog"); // 清除交易服数据 (独立xsj和sjmy) switch (_sjmyHelper.Gnpy) { case "sjmy" when _iniFile.IniReadValue("server", "TradingDelSjmy") == "1": ShowMsg(_sjmyHelper.DelDeal(_sjmyHelper.Mtid, _sjmyHelper.Gnpy)); ShowMsg("交易服数据清除完成"); break; case "xsjmy" when _iniFile.IniReadValue("server", "TradingDelXsj") == "1": ShowMsg(_sjmyHelper.DelDeal(_sjmyHelper.Mtid, _sjmyHelper.Gnpy)); ShowMsg("交易服数据清除完成"); break; default: ShowMsg("本次任务不清除交易服数据"); break; } // 群发送给客户端 ShowMsg("下发分控安装信息"); GroupSend($"搭建测试环境*{_sjmyHelper.Gnpy}*{_sjmyHelper.AppSrc}*{_sjmyHelper.ApkVersion}*{_sjmyHelper.Mtid}*{_sjmyHelper.Uninstall}*{_iniFile.IniReadValue("client", "FastLogin")}*{_iniFile.IniReadValue("client", "AllUninstall")}*{_sjmyHelper.ApkPackage}"); // 重置 MobileScriptModule where flog + mobile + uploadflog ShowMsg($"已重置数据库共有{_sjmyHelper.ResetOne()}条数据受到影响"); // 修改ScriptFlog = 1 _sjmyHelper.SetScriptFlog(1); _sjmyHelper.StartTime = DateTime.Now.ToString(CultureInfo.InvariantCulture); break; } } }