public static RfConfig Create() { if (_RfConfig == null) { _RfConfig = new RfConfig(); } return(_RfConfig); }
/// <summary> /// 1) 开启服务器端 /// </summary> public bool WcsServerOpen() { try { IPAddress ip = IPAddress.Parse(RfConfig.Create().WcsIP); serverSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); serverSocket.Bind(new IPEndPoint(ip, int.Parse(RfConfig.Create().WcsPort))); serverSocket.Listen(100); Log.WriteLog("本地的服务器端开启 " + RfConfig.Create().WcsPort); serverSocket.BeginAccept(new AsyncCallback(ListenClientConnect), null); return(true); } catch (Exception ex) { Log.WriteLog("本地的服务器端 " + ex.Message.ToString()); return(false); } }
static void Main() { #region 初始化PLC try { System.Threading.Thread.Sleep(300); Dictionary <string, List <string> > typeClass = new Dictionary <string, List <string> >(); DataTable table = RfConfig.Create().plcds.Tables[0]; foreach (DataRow row in table.Rows) { string[] plcstr = row["plcvalaue"].ToString().Split('%'); List <string> listPlc = new List <string>(); for (int i = 0; i < plcstr.Length; i++) { if (plcstr[i].ToString().Trim().Length > 0) { listPlc.Add(plcstr[i].ToString()); } } typeClass.Add(row["vlaue"].ToString(), listPlc); } PlcFactory.Instance().typeClass = typeClass; } catch (Exception ex) { // SystemParam.ErrText = ex.Message.ToString(); DevExpress.XtraSplashScreen.SplashScreenManager.Default.SendCommand( SplashScreen1.SplashScreenCommand.labelControl2, "初始化PLC失败"); // SystemParam.plcStatus = false; } #endregion CreateData.createDataBase(); Application.Run(new FrmMain()); }
private void FrmMain_Load(object sender, EventArgs e) //事件 的 委托 { if (WmsCommon.Instance().WcsServerOpen()) { tb_message.Text = "端口号为 " + RfConfig.Create().WcsPort + "的服务已经开启!\r\n"; timer1.Start(); sts_wms.StateIndex = 3; sts_plc.StateIndex = 3; } else { sts_wms.StateIndex = 1; sts_plc.StateIndex = 1; timer1.Start(); } BindData(); selectold(); Thread tr = new Thread(new ThreadStart(ListenData)); tr.Start(); Thread t1 = new Thread(new ThreadStart(BagCount)); t1.Start(); }