private void btnsetimpinjqt_Click(object sender, EventArgs e) { int ret; ret = IsAntSet(); if (ret == -1) { MessageBox.Show("please select antenna"); return; } else if (ret == 1) { DialogResult stat = DialogResult.OK; stat = MessageBox.Show("execute operation on the port without finding antenna ?", "tip-off", MessageBoxButtons.OKCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2); if (stat != DialogResult.OK) { return; } } byte[] pwd = null; ret = Form1.IsValidPasswd(this.tbaccesspasswd.Text.Trim()); { switch (ret) { case -3: MessageBox.Show("please input access password"); break; case -2: case -4: MessageBox.Show("access password must be 8 of hexadecimal numbers"); break; case -1: MessageBox.Show("access password must be 8 of hexadecimal numbers"); break; } } if (ret != 0) { return; } else { pwd = ByteFormat.FromHex(this.tbaccesspasswd.Text.Trim()); } Gen2TagFilter filter = null; if (checkfilter(ref filter) != 0) { return; } if ((!this.rbimpinjqtread.Checked) && (!this.rbimpinjwrite.Checked)) { MessageBox.Show("please select command type"); return; } try { if (this.rbimpinjqtread.Checked) { IMPINJ_M4_QtPara para = new IMPINJ_M4_QtPara(pwd); IMPINJ_M4_QtResult qtret = (IMPINJ_M4_QtResult)mrdr.CustomCmd(filter, CustomCmdType.IMPINJ_M4_Qt, para); if (qtret.MemType == IMPINJ_M4_QtPara.IMPINJ_Qt_Mem_Type.IMPINJ_Qt_Mem_Private) { this.rbimpinjqtmemprivate.Checked = true; } else { this.rbimpinjqtmempublic.Checked = true; } if (qtret.RangeType == IMPINJ_M4_QtPara.IMPINJ_Qt_Range_Type.IMPINJ_Qt_Range_FarField) { this.rbimpinjqtfarfield.Checked = true; } else { this.rbimpinjqtnearfiled.Checked = true; } } else { if ((!rbimpinjqtnearfiled.Checked) && (!rbimpinjqtfarfield.Checked)) { MessageBox.Show("please select reading distance"); return; } if ((!rbimpinjqtmemprivate.Checked) && (!rbimpinjqtmempublic.Checked)) { MessageBox.Show("please select memory profile"); return; } if ((!rbimpinjqtperm.Checked) && (!rbimpinjqttemp.Checked)) { MessageBox.Show("please select persistence type"); return; } IMPINJ_M4_QtPara.IMPINJ_Qt_Range_Type trange = IMPINJ_M4_QtPara.IMPINJ_Qt_Range_Type.IMPINJ_Qt_Range_Invalid; IMPINJ_M4_QtPara.IMPINJ_Qt_Persist_Type tpersist = IMPINJ_M4_QtPara.IMPINJ_Qt_Persist_Type.IMPINJ_Qt_Persist_Invalid; IMPINJ_M4_QtPara.IMPINJ_Qt_Mem_Type tmem = IMPINJ_M4_QtPara.IMPINJ_Qt_Mem_Type.IMPINJ_Qt_Mem_Invalid; if (rbimpinjqtnearfiled.Checked) { trange = IMPINJ_M4_QtPara.IMPINJ_Qt_Range_Type.IMPINJ_Qt_Range_NearField; } else { trange = IMPINJ_M4_QtPara.IMPINJ_Qt_Range_Type.IMPINJ_Qt_Range_FarField; } if (rbimpinjqtmemprivate.Checked) { tmem = IMPINJ_M4_QtPara.IMPINJ_Qt_Mem_Type.IMPINJ_Qt_Mem_Private; } else { tmem = IMPINJ_M4_QtPara.IMPINJ_Qt_Mem_Type.IMPINJ_Qt_Mem_Public; } if (rbimpinjqtperm.Checked) { tpersist = IMPINJ_M4_QtPara.IMPINJ_Qt_Persist_Type.IMPINJ_Qt_Persist_Perm; } else { tpersist = IMPINJ_M4_QtPara.IMPINJ_Qt_Persist_Type.IMPINJ_Qt_Persist_Temp; } IMPINJ_M4_QtPara para = new IMPINJ_M4_QtPara(pwd, tpersist, trange, tmem); mrdr.CustomCmd(filter, CustomCmdType.IMPINJ_M4_Qt, para); } } catch (OpFaidedException notagexp) { if (notagexp.ErrCode == 0x400) { MessageBox.Show("no tag"); } else { MessageBox.Show("operation failed:" + notagexp.ToString()); } return; } catch (Exception ex) { MessageBox.Show("operation failed:" + ex.ToString()); return; } }
private void btnsetimpinjqt_Click(object sender, EventArgs e) { int ret; ret = IsAntSet(); if (ret == -1) { MessageBox.Show("请选择操作天线"); return; } else if (ret == 1) { DialogResult stat = DialogResult.OK; stat = MessageBox.Show("在未检测到天线的端口执行操作,真的要执行吗?", "警告", MessageBoxButtons.OKCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2); if (stat != DialogResult.OK) { return; } } byte[] pwd = null; ret = Form1.IsValidPasswd(this.tbaccesspasswd.Text.Trim()); { switch (ret) { case -3: MessageBox.Show("访问密码不能为空"); break; case -2: case -4: MessageBox.Show("访问密码必须是8个16进制数"); break; case -1: MessageBox.Show("访问密码只能是16进制数字"); break; } } if (ret != 0) { return; } else { pwd = ByteFormat.FromHex(this.tbaccesspasswd.Text.Trim()); } Gen2TagFilter filter = null; if (checkfilter(ref filter) != 0) { return; } if ((!this.rbimpinjqtread.Checked) && (!this.rbimpinjwrite.Checked)) { MessageBox.Show("请选择命令类型"); return; } try { if (this.rbimpinjqtread.Checked) { IMPINJ_M4_QtPara para = new IMPINJ_M4_QtPara(pwd); IMPINJ_M4_QtResult qtret = (IMPINJ_M4_QtResult)mrdr.CustomCmd(filter, CustomCmdType.IMPINJ_M4_Qt, para); if (qtret.MemType == IMPINJ_M4_QtPara.IMPINJ_Qt_Mem_Type.IMPINJ_Qt_Mem_Private) { this.rbimpinjqtmemprivate.Checked = true; } else { this.rbimpinjqtmempublic.Checked = true; } if (qtret.RangeType == IMPINJ_M4_QtPara.IMPINJ_Qt_Range_Type.IMPINJ_Qt_Range_FarField) { this.rbimpinjqtfarfield.Checked = true; } else { this.rbimpinjqtnearfiled.Checked = true; } } else { if ((!rbimpinjqtnearfiled.Checked) && (!rbimpinjqtfarfield.Checked)) { MessageBox.Show("请选择识别距离"); return; } if ((!rbimpinjqtmemprivate.Checked) && (!rbimpinjqtmempublic.Checked)) { MessageBox.Show("请选择内存视图"); return; } if ((!rbimpinjqtperm.Checked) && (!rbimpinjqttemp.Checked)) { MessageBox.Show("请选择状态类型"); return; } IMPINJ_M4_QtPara.IMPINJ_Qt_Range_Type trange = IMPINJ_M4_QtPara.IMPINJ_Qt_Range_Type.IMPINJ_Qt_Range_Invalid; IMPINJ_M4_QtPara.IMPINJ_Qt_Persist_Type tpersist = IMPINJ_M4_QtPara.IMPINJ_Qt_Persist_Type.IMPINJ_Qt_Persist_Invalid; IMPINJ_M4_QtPara.IMPINJ_Qt_Mem_Type tmem = IMPINJ_M4_QtPara.IMPINJ_Qt_Mem_Type.IMPINJ_Qt_Mem_Invalid; if (rbimpinjqtnearfiled.Checked) { trange = IMPINJ_M4_QtPara.IMPINJ_Qt_Range_Type.IMPINJ_Qt_Range_NearField; } else { trange = IMPINJ_M4_QtPara.IMPINJ_Qt_Range_Type.IMPINJ_Qt_Range_FarField; } if (rbimpinjqtmemprivate.Checked) { tmem = IMPINJ_M4_QtPara.IMPINJ_Qt_Mem_Type.IMPINJ_Qt_Mem_Private; } else { tmem = IMPINJ_M4_QtPara.IMPINJ_Qt_Mem_Type.IMPINJ_Qt_Mem_Public; } if (rbimpinjqtperm.Checked) { tpersist = IMPINJ_M4_QtPara.IMPINJ_Qt_Persist_Type.IMPINJ_Qt_Persist_Perm; } else { tpersist = IMPINJ_M4_QtPara.IMPINJ_Qt_Persist_Type.IMPINJ_Qt_Persist_Temp; } IMPINJ_M4_QtPara para = new IMPINJ_M4_QtPara(pwd, tpersist, trange, tmem); mrdr.CustomCmd(filter, CustomCmdType.IMPINJ_M4_Qt, para); } } catch (OpFaidedException notagexp) { if (notagexp.ErrCode == 0x400) { MessageBox.Show("没法发现标签"); } else { MessageBox.Show("操作失败:" + notagexp.ToString()); } return; } catch (Exception ex) { MessageBox.Show("操作失败:" + ex.ToString()); return; } }