private void readCert(object o, EventArgs args) { try { ReadIDCardService ReadIDCardService = new ReadIDCardService(); IDCard Idcard = ReadIDCardService.ReadIDCard(); if (Idcard != null && Idcard.CardNo.Length > 10) { this.lab_name.Text = Idcard.Name; this.lab_sex.Text = Idcard.Sex; this.lab_mz.Text = Idcard.Nationality; this.lab_year.Text = Idcard.Birthday; this.lab_address.Text = Idcard.Address; this.lab_Idcard.Text = Idcard.CardNo; this.lab_Institution.Text = Idcard.Institution; this.lab_startTime.Text = Idcard.Begin_validity; this.lab_endTime.Text = Idcard.End_validity; this.pictureBox1.ImageLocation = Idcard.PhotoDirectory; //获取卡信息 //GetInformation(); } } catch (Exception ex) { LogHelper.WriteLog(ex); } }
public IDCard ReadIDCard() { LogHelper.WriteLog("开始读取"); int state; string imgpath = System.IO.Directory.GetCurrentDirectory() + @"\" + DateTime.Now.ToString().Trim(); StringBuilder pBmpData = new StringBuilder().Append(imgpath); StringBuilder pName = new StringBuilder(); // StringBuilder pSex = new StringBuilder(); // StringBuilder pNation = new StringBuilder(); // StringBuilder pBirth = new StringBuilder(); // StringBuilder pAddress = new StringBuilder(); // StringBuilder pCertNo = new StringBuilder(); // StringBuilder pDepartment = new StringBuilder(); // StringBuilder pEffectData = new StringBuilder(); // StringBuilder pExpire = new StringBuilder(); // //卡认证 int intReadRet = HD_Authenticate(); LogHelper.WriteLog("卡认证:" + LogHelper.GetStateLog(intReadRet)); //if (intReadRet != 0) //{ // state = ReadIDCardService.HD_CloseComm(new IntPtr(0)); // LogHelper.WriteLog("关闭:" + LogHelper.GetStateLog(state)); // return null; //读身份证信息 int intReadBaseInfosRet = ReadIDCardService.HD_Read_BaseMsg(pBmpData, pName, pSex, pNation, pBirth, pAddress, pCertNo, pDepartment, pEffectData, pExpire); LogHelper.WriteLog("读取身份证信息:" + LogHelper.GetStateLog(intReadBaseInfosRet)); //if (intReadBaseInfosRet != -3) //{ state = ReadIDCardService.HD_CloseComm(new IntPtr(0)); LogHelper.WriteLog("关闭:" + LogHelper.GetStateLog(state)); // return null; //} IDCard CardData = new IDCard(); CardData.CardNo = pCertNo.ToString().Trim(); CardData.Name = pName.ToString().Trim(); CardData.Sex = pSex.ToString().Trim(); CardData.Nationality = pNation.ToString().Trim(); CardData.Birthday = pBirth.ToString().Trim(); CardData.Address = pAddress.ToString().Trim(); CardData.Institution = pDepartment.ToString().Trim(); CardData.Begin_validity = pEffectData.ToString().Trim(); CardData.End_validity = pExpire.ToString().Trim(); CardData.PhotoDirectory = pBmpData.ToString().Trim(); LogHelper.WriteLog("Name:" + CardData.Name + "、" + "Sex:" + CardData.Sex + "、" + "Nationality:" + CardData.Nationality + "、" + "Birthday:" + CardData.Birthday + "、" + "Address:" + CardData.Address + "、" + "CardNo:" + CardData.CardNo + "、" + "Begin_validity:" + CardData.Begin_validity + "、" + "End_validity:" + CardData.End_validity + "、" + "Institution:" + CardData.Institution + "、" + "PhotoDirectory:" + CardData.PhotoDirectory); return(CardData); }
private void VerifyPort() { try { //验证端口设置是否符合要求 port = int.Parse(ConfigurationManager.AppSettings["port"].ToString()); int[] arr = new int[32] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016 }; foreach (var item in arr) { if (port == item) { b = true; break; } } if (b == false) { LogHelper.WriteLog("端口设置错误!"); return; } //链接阅读器--初始化 int intOpenRet = ReadIDCardService.HD_InitComm(port); LogHelper.WriteLog("初始化:" + LogHelper.GetStateLog(intOpenRet)); if (intOpenRet != 0) { LogHelper.WriteLog(intOpenRet + "初始化失败!"); //连接失败后启动重连 1s/次 if (timer1 == null) { timer1 = new Timer(); timer1.Interval = 1000;//TimeSpan.FromMilliseconds(1000); timer1.Tick += Reconnect; timer1.Start(); return; } } //连接成功读卡刷新信息 if (b) { if (timer1 != null) { //连接成功停止重连 timer1.Stop(); timer1 = null; } timer = new Timer(); timer.Interval = 400;//TimeSpan.FromMilliseconds(1000); timer.Tick += readCert; timer.Start(); } } catch (Exception ex) { LogHelper.WriteLog(ex); return; } }