public override string BinToHex(byte [] key) { StringBuilder cardStr = new StringBuilder(); ReaderDllMethod.BinToHex(key, cardStr, key.Length); return(cardStr.ToString()); }
public override bool Select(out string msg) { bool res = true; int st = 0; byte[] cardUid = new byte[10]; if (!string.IsNullOrEmpty(CardId)) { msg = "CardID is empty"; return(false); } ReaderDllMethod.HexToBin(CardId, cardUid, CardId.Length); byte [] cardsak = new byte[1]; st = ReaderDllMethod.mwSelect(handle, cardUid, CardId.Length, out cardsak[0]); //请求卡TYPE A 类型卡片 if (st < 0) { msg = st.ToString() + "*" + ReaderDllMethod.getErrMsg(st); res = false; } else { msg = st.ToString() + "*" + ReaderDllMethod.getErrMsg(st); StringBuilder cardStr = new StringBuilder(); ReaderDllMethod.BinToHex(cardsak, cardStr, st); CardSak = cardStr.ToString(); DevBeep(1, 1, 2); } return(res); }
public override bool Rats(out string msg) { bool res = true; int st = 0; byte[] cardUid = new byte[50]; st = ReaderDllMethod.mwRats(handle, cardUid); //获取TYPE-A类型的智能卡复位信息 if (st < 0) { msg = st.ToString() + "*" + ReaderDllMethod.getErrMsg(st); res = false; } else { msg = st.ToString() + "*" + ReaderDllMethod.getErrMsg(st); StringBuilder cardStr = new StringBuilder(); ReaderDllMethod.BinToHex(cardUid, cardStr, st); AtrInfo = cardStr.ToString(); DevBeep(1, 1, 2); } return(res); }
public override bool OpenCard(out string msg) { bool res = true; int st = 0; byte[] cardUid = new byte[10]; st = ReaderDllMethod.mwOpenCard(handle, Mode, cardUid); //打开卡片 if (st < 0) { msg = st.ToString() + "*" + ReaderDllMethod.getErrMsg(st); res = false; } else { StringBuilder cardUidStr = new StringBuilder(); ReaderDllMethod.BinToHex(cardUid, cardUidStr, st);//将卡号转换为16进制字符串 msg = st.ToString() + "*" + ReaderDllMethod.getErrMsg(st); CardId = cardUidStr.ToString(); DevBeep(1, 1, 2); } return(res); }