public bool conn() { hreader = (UIntPtr)0x00; int iret; UIntPtr InvenParamSpecList = UIntPtr.Zero; InvenParamSpecList = RfidBLL.RDR_CreateInvenParamSpecList(); RfidBLL.RDR_SetInvenStopTrigger(InvenParamSpecList, 3, 1000, 0); UIntPtr AIPIso18000p6c = RfidBLL.ISO18000p6C_CreateInvenParam(InvenParamSpecList, 0, 0, 0, 0x00, 0xff); if (AIPIso18000p6c.ToUInt64() != 0) { string connstr = "RDType=M60;CommType=COM;COMName=COM8;BaudRate=38400;Frame=8E1;BusAddr=255"; UInt32 nCOMCnt = RfidBLL.COMPort_Enum(); for (uint i = 0; i < nCOMCnt; i++) { StringBuilder comName = new StringBuilder(); comName.Append('\0', 64); RfidBLL.COMPort_GetEnumItem(i, comName, (UInt32)comName.Capacity); connstr = "RDType=M60;CommType=COM;COMName=" + comName + ";BaudRate=38400;Frame=8E1;BusAddr=255"; int r = RfidBLL.RDR_Open(connstr, ref hreader); if (r == 0) { StringBuilder devInfor = new StringBuilder(); devInfor.Append('\0', 128); UInt32 nSize; nSize = (UInt32)devInfor.Capacity; r = RfidBLL.RDR_GetReaderInfor(hreader, 0, devInfor, ref nSize); if (r == 0) { ServerConfig.connState = true; _shouldStop = false; return(true); } return(false); } } return(false); } return(false); }
public void DoInventory() { int iret; Byte AIType = 1; if (onlyNewTag == 1) { AIType = 2; //only new tag inventory } while (!_shouldStop) { StringBuilder devInfor = new StringBuilder(); devInfor.Append('\0', 128); UInt32 nSize; nSize = (UInt32)devInfor.Capacity; iret = RfidBLL.RDR_GetReaderInfor(hreader, 0, devInfor, ref nSize); if (iret != 0) { close(); break; } byte[] AntennaSel = new byte[16]; UInt32 nTagCount = 0; iret = tag_inventory(AIType, 0, AntennaSel, ref nTagCount); if (iret == 0) { // inventory ok } else { // inventory error } AIType = 1; if (onlyNewTag == 1) { AIType = 2; } } RfidBLL.RDR_ResetCommuImmeTimeout(hreader); }