/// <summary> /// Gets the image once. /// </summary> /// <returns></returns> public bool GetImageByPressOnce() { try { // Get Hardware Handle objHdl = GetDevHDL(); if (objHdl <= 0) { MessageBox.Show(StringConstant.Error_NotFoundHDL); return(false); } // To get fingerprint by tow times TesoWin32Helper.TcBeepLight(objHdl, 2); // Get single fingerprint nRet = TesoWin32Helper.TcDoFeature(objHdl, pVer); if (nRet >= 0) { strVer = System.Text.Encoding.UTF8.GetString(pVer); } else { MessageBox.Show(StringConstant.Error_VarifyFingerprint); return(false); } // Get Image int imageIndex = 4; int imgLength = 0; byte[] imagebytes = new byte[1024 * 100]; imgLength = TesoWin32Helper.TcGetImgDat(objHdl, imageIndex, imagebytes); if (imgLength < 0) { MessageBox.Show(StringConstant.Error_FingerprintImage); return(false); } // Save Image First and delete temp image TesoWin32Helper.TcSaveAsBmp(fingerPath, imagebytes); using (FileStream fs = new FileStream(fingerPath, FileMode.Open, FileAccess.Read, FileShare.Read)) curImg = new Bitmap(Bitmap.FromStream(fs)); File.Delete(fingerPath); return(true); } catch (Exception) { throw; } finally { var res = TesoWin32Helper.TcDeleteHDL(objHdl); } }
/// <summary> /// Get finger image by index /// </summary> /// <returns></returns> private bool GetFingerImageByIndex(int imageIndex) { try { // Get Hardware Handle objHdl = GetDevHDL(); if (objHdl <= 0) { MessageBox.Show(StringConstant.Error_NotFoundHDL); return(false); } // To get fingerprint by one times TesoWin32Helper.TcBeepLight(objHdl, 0); var doFeature = TesoWin32Helper.TcDoTemplet(objHdl, pReg); if (doFeature < 0) { MessageBox.Show(StringConstant.Error_FingerprintImage); return(false); } // Get Image int imgLength = 0; byte[] imagebytes = new byte[1024 * 100]; imgLength = TesoWin32Helper.TcGetImgDat(objHdl, imageIndex, imagebytes); if (imgLength < 0) { MessageBox.Show(StringConstant.Error_FingerprintImage); return(false); } // Save Image First and delete temp image TesoWin32Helper.TcSaveAsBmp(fingerPath, imagebytes); using (FileStream fs = new FileStream(fingerPath, FileMode.Open, FileAccess.Read, FileShare.Read)) curImg = new Bitmap(Bitmap.FromStream(fs)); File.Delete(fingerPath); return(true); } catch (Exception) { throw; } finally { var res = TesoWin32Helper.TcDeleteHDL(objHdl); } }