/// <summary> /// 加载指纹dat文件 /// </summary> /// <param name="entity"></param> private void LoadFingerDat(CmcsFinger entity) { if (!IsConnect) { ShowInfomation("请先打开设备..."); return; } ret = Fingerdll.ZAZDownCharFromFile(hHandle, nDevAddr, 1, entity.FingerUrl); ret = Fingerdll.ZAZDownCharFromFile(hHandle, nDevAddr, 2, entity.FingerUrl); if (ret == 0) { byte[] ImgData = new byte[ImageSize]; int[] ImgLen = new int[1]; ret = Fingerdll.ZAZUpImage(hHandle, nDevAddr, ImgData, ImgLen); //上传图象 if (ret != 0) { ShowInfomation(Fingerdll.ZAZErr2Strt(ret)); return; } strFile = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "ZAZFinger.bmp"); ret = Fingerdll.ZAZImgData2BMP(ImgData, strFile); if (ret != 0) { ShowInfomation(Fingerdll.ZAZErr2Strt(ret), eOutputType.Error); return; } ShowImage(strFile); } }
private void superGridControl1_DataBindingComplete(object sender, DevComponents.DotNetBar.SuperGrid.GridDataBindingCompleteEventArgs e) { foreach (GridRow gridRow in e.GridPanel.Rows) { CmcsFinger entity = gridRow.DataItem as CmcsFinger; if (entity == null) { return; } gridRow.Cells["clmUserAccount"].Value = this.User.UserAccount; gridRow.Cells["clmUserName"].Value = this.User.UserName; } }
/// <summary> /// 删除用户指纹 /// </summary> /// <param name="user"></param> /// <returns></returns> public bool DelFinger(CmcsFinger userfinger) { CmcsFinger finger = Dbers.GetInstance().SelfDber.Get <CmcsFinger>(userfinger.Id); if (finger != null) { //if (File.Exists(finger.FingerUrl)) // Directory.Delete(finger.FingerUrl, true); delLicenseFiles(finger.FingerUrl.Substring(0, finger.FingerUrl.LastIndexOf(@"\") + 1), finger.Id); return(Dbers.GetInstance().SelfDber.Delete <CmcsFinger>(userfinger.Id) > 0); } return(false); }
/// <summary> /// 加入指纹 /// </summary> /// <param name="user"></param> /// <returns></returns> public bool InsertFinger(User user, CmcsFinger userfinger) { CmcsFinger finger = Dbers.GetInstance().SelfDber.Entity <CmcsFinger>("where UserId=:UserId and FingerName=:FingerName", new { UserId = user.PartyId, FingerName = userfinger.FingerName }); if (finger == null) { finger = userfinger; finger.UserId = user.PartyId; return(Dbers.GetInstance().SelfDber.Insert(finger) > 0); } else { finger.FingerUrl = userfinger.FingerUrl; return(Dbers.GetInstance().SelfDber.Update(finger) > 0); } }
private void superGridControl1_CellMouseDown(object sender, DevComponents.DotNetBar.SuperGrid.GridCellMouseEventArgs e) { CmcsFinger entity = Dbers.GetInstance().SelfDber.Get <CmcsFinger>(superGridControl1.PrimaryGrid.GetCell(e.GridCell.GridRow.Index, superGridControl1.PrimaryGrid.Columns["clmId"].ColumnIndex).Value.ToString()); switch (superGridControl1.PrimaryGrid.Columns[e.GridCell.ColumnIndex].Name) { case "clmEdit": cmbFingerName.Text = entity.FingerName; LoadFingerDat(entity); btn_eroll_Click(null, null); break; case "clmDel": if (MessageBoxEx.Show("确定删除该条记录?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { fingerIdentifyDAO.DelFinger(entity); BindData(); } break; } }
/// <summary> /// 注册指纹 /// </summary> private void RegistFinger() { if (!IsConnect) { ShowInfomation("请先打开设备..."); return; } //生成特征A if (GetFinger(1) != 1) { return; } Thread.Sleep(200); //生成特征B if (GetFinger(2) != 1) { return; } Thread.Sleep(200); /****************合成模板*********/ ret = Fingerdll.ZAZRegModule(hHandle, nDevAddr); //合并特征 if (ret != 0) { ShowInfomation(Fingerdll.ZAZErr2Strt(ret)); return; } else { ShowInfomation("合成指纹模板成功"); } Thread.Sleep(200); //本例以存在在指纹设备库中进行 //ret = Fingerdll.ZAZStoreChar(hHandle, nDevAddr, 1, FingerIndex); //存放模板 //StrFile = System.Windows.Forms.Application.StartupPath + "\\FTmpelet.dat"; #region 存储指纹到服务器 CmcsFinger userfinger = new CmcsFinger(); InvokeEx(() => { StrFile = commonDAO.GetCommonAppletConfigString("指纹识别数据存放路径"); userfinger = fingerIdentifyDAO.GetFinerByFingerName(this.User.PartyId, cmbFingerName.Text); if (userfinger == null) { userfinger = new CmcsFinger(); userfinger.FingerName = cmbFingerName.Text; } StrFile = Path.Combine(StrFile, this.User.UserAccount); if (!File.Exists(StrFile)) { Directory.CreateDirectory(StrFile); } StrFile = Path.Combine(StrFile, userfinger.Id + ".dat"); userfinger.FingerUrl = StrFile; #endregion //将指纹信息写入到dat文件 ret = Fingerdll.ZAZUpChar2File(hHandle, nDevAddr, 1, strFile); if (ret != 0) { ShowInfomation(Fingerdll.ZAZErr2Strt(ret)); return; } else { if (fingerIdentifyDAO.InsertFinger(this.User, userfinger) && File.Exists(StrFile)) { ShowInfomation("存储指纹成功"); //showFpdb();显示当前设备指纹存储信息 FingerIndex++; BindData(); return; } } }); }