Ejemplo n.º 1
0
        static void Main()
        {
            if (appUnique.IsUnique("BigBirdConsole"))
            {
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                R.MainUI = new MainForm();

                //初始化配置信息
                InitConfig();
                R.Log = new Log();                  //启动日志记录
                SystemSleepAPI.PreventSleep(false); //禁用计算机息屏和待机

                //启动进程
                TxHelper.Start();
                TxConvertHelper.Connect();
                TxReadQueue.Start();
                PlanTaskCore.Start();
                StorePersistanceTask.Start();
                CommandReader.Start();

                Application.Run(R.MainUI);
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 运行消息
        /// </summary>
        /// <param name="host"></param>
        /// <param name="model"></param>
        public static void ExecuteMessage(string host, TcpDataModel model)
        {
            if (R.Tx.Hosts.Contains(host))
            {
                switch (model.Type)
                {
                //应答信息
                case 20001000:     /* 普通应答 */
                    R.Tx.TcppServer.Write(host, 20001000, "~");
                    break;

                //系统状态
                case 20002000:                   /* 系统状态 */
                {
                    TxConvertHelper.Send(model); //转发给上游服务
                    string data   = Json.Byte2Object <string>(model.Data);
                    var    status = Json.String2Object <SystemStatusModel>(data);

                    R.Store.AddSystemStatus(status);
                    TxHostMapTool.AddHost(host, $"{status.IP}");
                    R.MainUI.systemListControl1.AddOrUpdate(status);
                    R.MainUI.txConsoleControl1.Write(host, model.Type, $"{Json.Byte2Object<string>(model.Data)}");
                    break;
                }

                //服务信息
                case 20003000:                   /* 服务状态 */
                {
                    TxConvertHelper.Send(model); //转发给上游服务
                    string data   = Json.Byte2Object <string>(model.Data);
                    var    status = Json.String2Object <ProjectStatusModel>(data);

                    R.Store.AddProjectStatus(status);
                    R.MainUI.projectListControl1.AddOrUpdate(status);
                    R.MainUI.txConsoleControl1.Write(host, model.Type, $"{data}");
                    break;
                }

                //程序更新
                case 90001000:
                {
                    Task.Factory.StartNew(() =>
                        {
                            try
                            {
                                string fire = Json.Byte2Object <string>(model.Data);
                                if (File.Exists(R.AppointFile))
                                {
                                    byte[] data = BinaryFileTool.read(R.AppointFile);
                                    R.Tx.TcppServer.Write(host, 90002000, data);
                                }
                            }
                            catch { }
                        });
                }
                break;

                case 90002000: { } break;

                default:
                    R.MainUI.txConsoleControl1.Write(host, model.Type, $"{model.Data.Length}");
                    break;
                }
            }
        }