private void rb_HF_CheckedChanged(object sender, EventArgs e) { if (rb_HF.Checked) { _RFIDDevice = new HFISO15693(); _RFIDDevice.Close(); string strLog = string.Empty; _RFIDDevice.Open(ref strLog); } }
private void reconnectTips(object obj) { //提示窗口线程 RFIDInterface creader = obj as RFIDInterface; Thread boxclose = new Thread(new ParameterizedThreadStart(closebox)); boxclose.IsBackground = true; boxclose.Start(obj); MessageBox.Show(creader.ip + "断线,正在尝试重连......", creader.ip + "Tips"); log.Info(creader.ip + "断线,正在尝试重连......"); }
private void closebox(object obj) {//关闭提示窗口线程 RFIDInterface clreader = obj as RFIDInterface; Thread.Sleep(1000); IntPtr dlg = FindWindow(null, clreader.ip + "Tips"); if (dlg != IntPtr.Zero) { PostMessage(dlg, VM_CLOSE, IntPtr.Zero, IntPtr.Zero); } }
private void WriteTag_Load(object sender, EventArgs e) { SetLabelStatus(statusType.START); //_RFIDDevice = new HFISO15693(); _RFIDDevice = new UHFISO18000(); string strLog = string.Empty; _RFIDDevice.Open(ref strLog); WriteLog(lrtxtLog, strLog, ReaderInfo.readerConnerted ? 0 : 1); chkbox_burningTag.Checked = ReaderInfo.readerConnerted; }
public HCSCM_entityset_manager_bindingRfid(SortedList SLdata) { InitializeComponent(); #region buttont图片加载 this.but_cancel.Image = ResourcesImageHelper.Instance.GetResourcesImage("Common.Buttom", "cancel", EnumImageType.PNG); this.but_save.Image = ResourcesImageHelper.Instance.GetResourcesImage("Common.Buttom", "Preservation", EnumImageType.PNG); this.but_binding.Image = ResourcesImageHelper.Instance.GetResourcesImage("Common.Buttom", "reBind", EnumImageType.PNG); this.but_remove.Image = ResourcesImageHelper.Instance.GetResourcesImage("Common.Buttom", "removeBinding", EnumImageType.PNG); this.but_feelingEmpty.Image = ResourcesImageHelper.Instance.GetResourcesImage("Common.Buttom", "empty", EnumImageType.PNG); #endregion //设置窗体图标 this.Icon = new Icon(ResourcesImageHelper.Instance.GetResourcesStream("Common.icon", "MainIco", EnumImageType.ICO)); this.Text = ConfigurationManager.AppSettings["SystemName"].ToString() + "--绑定RFID"; //赋值并显示信息 tb_setName.Text = SLdata["器械名称"].ToString(); tb_iNumber.Text = SLdata["器械数量"].ToString(); set_id = SLdata["实体包id"].ToString(); instruments_id = SLdata["器械编号"].ToString(); set_code = SLdata["实体包条码"].ToString(); rfidCode = Loadclass(); if (rfidCode != null) { rfidCode.GetNoneAddData += AddInstrumentData; rfidCode.Connecttion(); } try { if (rfidCode == null || !rfidCode.IsStartScan)//判断有没有连接上RFID机器 { MessageBox.Show(PromptMessageXmlHelper.Instance.GetPromptMessage("reconnectRfid", EnumPromptMessage.warning), "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information); IsShow = false; } else { IsShow = true; selBindingRFID(); //连接RFID repeatData = LoadRepeatRfidTable(); repeatRFID = LoadRepeatRfid(); } } catch (Exception) { MessageBox.Show(PromptMessageXmlHelper.Instance.GetPromptMessage("reconnectRfid", EnumPromptMessage.warning), "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// 打开RFID读写器 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnOpenReader_Click(object sender, EventArgs e) { openState = (openState ^ true); this.btnOpenReader.Text = openState ? "Close Reader" : "Open Reader"; if (openState) { try { int count = rfidWriterList.Count; if (count <= 0 && rfidWriterList == null) { throw new Exception("从数据库中获取数据失败"); } else { //根据不同类型的Reader,ReaderFactory实例化不通过的Reader ReaderFactory readerFact = new ReaderFactory(); reader = readerFact.MakeReader(rfidWriterList[0].RFidreaderType); reader.Open(rfidWriterList[0].RFidreaderIP); this.readerLB.Items.Add(Convert.ToString(rfidWriterList[0].RFidreaderID + " " + rfidWriterList[0].RFidreaderIP + " " + rfidWriterList[0].RFidreaderType)); } //Reader打开之前不可用 this.btnWrite.Enabled = true; this.btnReadM4.Enabled = true; this.lockBTN.Enabled = true; } catch (Exception ex) { MessageBox.Show("打开读写器失败:" + ex.Message); } } else { this.readerLB.Items.Clear(); this.reader.CleanBuffer(); this.reader.Close(); //Reader关闭之后不可用 this.btnWrite.Enabled = false; this.btnReadM4.Enabled = false; this.lockBTN.Enabled = false; } }
private void Form1_Load(object sender, EventArgs e) { if (CheckLicense() == false) { MessageBox.Show("请升级软件"); return; } assemblyobj = CreateWc("http://10.60.3.27/PMSService/DataService.asmx"); //初始化读取描述 //获取间隔时间 List <string> TimeList = new List <string>(); string[] aryTime = new Jsonhelp().readjson("ReadTime", BasicConfigInfo.path).ToString().Split('|'); foreach (var a in aryTime) { TimeList.Add(a); } ddlinternalTime.DataSource = TimeList; //初始化cefsharp try { DbUtility dbhelp = new DbUtility(System.Configuration.ConfigurationManager.ConnectionStrings["cloudConn"].ToString(), DbProviderType.MySql); CefSettings seting = new CefSettings(); //seting.CefCommandLineArgs.Add("disable-gpu", "1"); //Cef.EnableHighDPISupport(); Cef.Initialize(seting); String page = string.Format(@"{0}\IVCurve\IVCurve.html", Application.StartupPath); //ChromiumWebBrowser myBrowser = new ChromiumWebBrowser(page); myBrowser = new ChromiumWebBrowser(page); //this.Controls.Add(myBrowser); myBrowser.Dock = DockStyle.Fill; gbxCurve.Controls.Add(myBrowser); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } //panel1.Controls.Add(myBrowser); objRFID = new UHFISO18000(); string res = ""; objRFID.Open(ref res); Log(res, 1); }
private void reconnect() { Thread.Sleep(20000); //检测线程启动延时 while (!form1.IsClose) { for (int i = 0; i < form1.Xtreaderlist.Count; i++) // XReaderInitList是所有已注册的reader { XtiveReaderInitClass CurInitR = form1.Xtreaderlist[i]; RFIDInterface CurR = CurInitR.reader; //Test //bool flag = CurR.Check(); //System.Console.WriteLine(CurR.ip + " " + CurR.Check() + CurR.ReConnectCount); //if (!CurR.Check() && CurR.ReConnectCount < CurInitR.errCountOfLoadTagData) //if (!flag) if (!CurR.Check()) { if (CurR.ReConnectCount <= CurInitR.errCountOfLoadTagData || reconnectCntSet.Contains(CurR.ReConnectCount)) { Thread tipThread = new Thread(new ParameterizedThreadStart(reconnectTips)); tipThread.IsBackground = true; tipThread.Start(CurR); CurR.ReConnect(CurR.ip); } else if (!(bool)AlertState[CurR.ip]) { Thread connectThread = new Thread(new ParameterizedThreadStart(reconnectWait)); connectThread.IsBackground = true; //connectThread.Priority = ThreadPriority.Lowest; connectThread.Start(CurR); CurR.ReConnectCount++; } else { CurR.ReConnectCount++; } } } Thread.Sleep(15000); //检测频率15s } }
public void initReaderList() { // List<RFIDReader> rfidreaderlist = new List<RFIDReader>(); // //连接数据库,获取所有reader的基本信息 //// RFIDReaderList createrredaerlist = new RFIDReaderList(); // XMLReaderConvertor xmlreaderlist = new XMLReaderConvertor(); // rfidreaderlist = xmlreaderlist.getRFIDReaderList(); //rfidreaderlist的个数 int count = rfidreaderlist.Count; if (count <= 0 && rfidreaderlist == null) { throw new Exception("从数据库中获取数据失败"); } else { //根据不同类型的Reader,ReaderFactory实例化不通过的Reader ReaderFactory readerFact = new ReaderFactory(); for (int i = 0; i < count; i++) { //实例化reader RFIDInterface reader = readerFact.MakeReader(rfidreaderlist[i].RFidreaderType); //打开reader //reader.ip = rfidreaderlist[i].RFidreaderIP; //2014.2.17:设置IP //System.Diagnostics.Stopwatch stopwatch = new Stopwatch(); //stopwatch.Start(); reader.Open(rfidreaderlist[i].RFidreaderIP); //stopwatch.Stop(); reconnectThread.AlertState.Add(rfidreaderlist[i].RFidreaderIP, false); //2014.2.24,对话框状态 this.readerListBox.Items.Add(Convert.ToString(rfidreaderlist[i].RFidreaderID + " " + rfidreaderlist[i].RFidreaderIP + " " + rfidreaderlist[i].RFidreaderType)); this.Xtreaderlist.Add(new XtiveReaderInitClass(reader, false)); //TimeSpan timespan = stopwatch.Elapsed; //System.Console.WriteLine(rfidreaderlist[i].RFidreaderIP+" "+timespan.TotalMilliseconds); } } }
private void reconnectWait(object obj) { /* * 弹出对话框,提示用户读写器断线,并等待用户响应,重连或返回 2014.2.24 */ RFIDInterface rfidreader = obj as RFIDInterface; AlertState[rfidreader.ip] = true; MessageBoxButtons messButton = MessageBoxButtons.OKCancel; DialogResult dr = MessageBox.Show(rfidreader.ip + "掉线或断电,请重新连接或上电重启,完成后按\"确定\"按钮重连", "断线重连", messButton); log.Info(rfidreader.ip + "掉线或断电"); //System.Console.WriteLine("Wait"); if (dr == DialogResult.OK) { rfidreader.ReConnect(rfidreader.ip); } //System.Console.WriteLine("Reconnect"); AlertState[rfidreader.ip] = false; rfidreader.ReConnectCount = 0; }
/// <summary> /// 窗体加载事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void OnDialogLoad(object sender, EventArgs e) { InitializeRFID_InTable(); InitalizeSetInfo(); RefreshDataGrid(); try { rfidCode = Loadclass(); if (rfidCode != null) { rfidCode.GetNoneAddData += AddInstrumentData; rfidCode.Connecttion(); } if (rfidCode == null || !rfidCode.IsStartScan) { this.Invoke(new Action(() => { MessageBox.Show("连接RFID读取器失败"); })); } } catch { MessageBox.Show("连接RFID读取器失败"); } _isShow = true; }
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e) { EPRuntime epRuntime = prefilter.getEPRuntime(); while (ismonitor) { if (this.Xtreaderlist.Count > 0) { foreach (XtiveReaderInitClass curInitR in Xtreaderlist) // XReaderInitList是所有已注册的reader { RFIDInterface curR = curInitR.reader; if ((bool)reconnectThread.AlertState[curR.ip] || !curR.Check()) { continue; //检测跳过 } bool bResult = curR.LoadTagData(ref xtaglist, ref recordcount); if (recordcount > 0) { for (int i = 0; i < recordcount; i++) { rfiddata.XtiveTag tag = xtaglist[i]; epRuntime.SendEvent(tag); //发送事件到预过滤处理引擎 } } else { //strResult = "No Tag! \r\n"; } } } Thread.Sleep(this.readFre); //读取数据频率 } }
public XtiveReaderInitClass(RFIDInterface reader, bool initStatus) { this.reader = reader; this.bInitStatus = initStatus; }