Example #1
0
        /// <summary>
        /// 读取热备配置信息
        /// </summary>
        public void ReadHostSet()
        {
            FrmHostIpSet frm = new FrmHostIpSet("HostIPConfig.xml");
            string strPort = String.Empty;
            frm.ReturnHostSet(out IsStartHost, out IsHost, out IpAddress, out strPort);
            if (commType)
            {
                startTcp.IsStartHostBacker = IsStartHost;
            }
            else
            {
                //传给串口是否启动热备
                startPort.IsStartHostBacker = IsStartHost;
            }
            if (IsStartHost)
            {
                //热备没有结束,不发送数据
                RBSend = false;

                ListenPort = Convert.ToInt32(strPort);
                // 退出热备程序
                hostBacker.Exit();

                if (!commType)
                {
                    //读取通信串口标志
                    SetSerial();
                    // 重新初始化赵建伟热备程序
                    hostBacker.InitHostBacker(IsHost, commType, IpAddress, ListenPort, strPortSign);
                    //传给串口是否是主机
                    startPort.IsHost = IsHost;
                    startPort.RbSend = RBSend;
                }
                else
                {
                    // 重新初始化赵建伟热备程序
                    hostBacker.InitHostBacker(IsHost, commType, IpAddress, ListenPort, tcpMark.ToString());
                    startTcp.IsHost = IsHost;
                    startTcp.RbSend = RBSend;
                }


                //更改状态栏中主备机状态
                if (IsHost)
                {
                    SetText(stlHostBack, "主机", System.Drawing.Color.Black);
                }
                else
                {
                    SetText(stlHostBack, "备机", System.Drawing.Color.Black);
                }


                #region[开始定时更新基站]
                if (sqlSave != null)
                {
                    if (commType)
                    {
                        MainHelper.StartTcpUpdateTime(sqlSave, "TcpServer.xml", "StationUpdateConfig.xml");
                    }
                    MainHelper.StartStationUpdateTimer(sqlSave, commType, "Station.xml", "StationUpdateConfig.xml");

                }
                #endregion
            }
            else
            {
                RBSend = true;
                // 退出热备程序
                hostBacker.Exit();

                if (!commType)
                {
                    //读取通信串口标志
                    SetSerial();
                    //传给串口是否是主机
                    startPort.IsHost = true;
                    startPort.RbSend = RBSend;
                }
                else
                {
                    startTcp.IsHost = true;
                    startTcp.RbSend = RBSend;
                }
                ////不启用热备,直接存储数据库
                //hostBacker.InitHostBacker(commType);

                SetText(stlHostBack, "未启用热备", System.Drawing.Color.Black);

                SetText(tslHost, "单机", System.Drawing.Color.Black);

                #region[开始定时更新基站]
                if (sqlSave != null)
                {
                    if (commType)
                    {
                        MainHelper.StartTcpUpdateTime(sqlSave, "TcpServer.xml", "StationUpdateConfig.xml");
                    }
                    MainHelper.StartStationUpdateTimer(sqlSave, commType, "Station.xml", "StationUpdateConfig.xml");

                }
                #endregion
            }
        }
Example #2
0
        /// <summary>
        /// 创建配置菜单
        /// </summary>
        private void BuildConfigMenu()
        {
            //// 参数设置
            //ToolStripMenuItem menuParams = new ToolStripMenuItem("参数设置(&P)");
            //menuParams.Click += delegate
            //{
            //    FrmParams frmParams = new FrmParams("Params.xml");
            //    frmParams.ShowDialog();
            //    frmParams.Dispose();
            //};
            //menuItemConfig.DropDownItems.Add(menuParams);

            //// 分隔符
            //menuItemConfig.DropDownItems.Add("-");

            // 串口配置
            ToolStripMenuItem menuCommConfig = new ToolStripMenuItem("通讯配置(&C)");
            menuCommConfig.Click += delegate
            {
                StartPort.ShowCommSetDialog("SerialPort.xml", frmMain);
            };
            menuItemConfig.DropDownItems.Add(menuCommConfig);

            //// 数据库配置
            //ToolStripMenuItem menuDBConfig = new ToolStripMenuItem("数据库(&D)");
            //menuItemConfig.DropDownItems.Add(menuDBConfig);

            //// 主数据库
            //ToolStripMenuItem menuDBConfigMain = new ToolStripMenuItem("主数据库(&M)");
            //menuDBConfigMain.Click += delegate
            //{
            //    FrmDBSet frmDBSet = new FrmDBSet(frmMain, 1, "DbConfig.xml");
            //    frmDBSet.ErrorMessage += frmDBSet_ErrorMessage;
            //    frmDBSet.ShowDialog();
            //    frmDBSet.Dispose();
            //};
            //menuDBConfig.DropDownItems.Add(menuDBConfigMain);

            //// 备数据库
            //ToolStripMenuItem menuDBConfigBackup = new ToolStripMenuItem("备数据库(&B)");
            //menuDBConfigBackup.Click += delegate
            //{
            //    FrmDBSet frmDBSet = new FrmDBSet(frmMain, 2, "DbConfig.xml");
            //    frmDBSet.ErrorMessage += frmDBSet_ErrorMessage;
            //    frmDBSet.ShowDialog();
            //    frmDBSet.Dispose();
            //};
            //menuDBConfig.DropDownItems.Add(menuDBConfigBackup);

            // 热备配置 --袁丽修改 2008-03-04
            ToolStripMenuItem menuHostConfig = new ToolStripMenuItem("热备配置(&R)");
            menuHostConfig.Click += delegate
           {
               FrmHostIpSet frmHost = new FrmHostIpSet("HostIPConfig.xml");
               frmHost.ErrorMessage += frmDBSet_ErrorMessage;
               frmHost.ListenHostSet += new FrmHostIpSet.ListenHostSetEventHandler(frmHost_ListenHostSet);
               frmHost.ShowDialog();
               frmHost.Dispose();
           };
            //menuItemConfig.DropDownItems.Add(menuHostConfig);
        }