Exemplo n.º 1
0
        /// <summary>
        /// To get template
        /// </summary>
        /// <returns></returns>
        public bool DoTemplet()
        {
            try
            {
                // Get Hardware Handle
                objHdl = GetDevHDL();
                if (objHdl <= 0)
                {
                    MessageBox.Show(StringConstant.Error_NotFoundHDL);
                    return(false);
                }

                // To get fingerprint by four times
                nRet = TesoWin32Helper.TcDoTemplet(objHdl, pReg);
                if (nRet < 0)
                {
                    MessageBox.Show(StringConstant.Error_RegisterTemplate);
                    return(false);
                }

                strReg = System.Text.Encoding.UTF8.GetString(pReg);
                return(true);
            }
            catch (Exception e)
            {
                throw e;
            }
            finally
            {
                var res = TesoWin32Helper.TcDeleteHDL(objHdl);
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Do safe match
        /// </summary>
        /// <returns></returns>
        public bool DoSafeMatch()
        {
            try
            {
                // Get Hardware Handle
                objHdl = GetDevHDL();
                if (objHdl <= 0)
                {
                    MessageBox.Show(StringConstant.Error_NotFoundHDL);
                    return(false);
                }

                // Compare fingerprint
                nRet  = TesoWin32Helper.TcSafeMatch(objHdl, strReg, strVer, 3);
                match = nRet;
                if (nRet < 0)
                {
                    MessageBox.Show(StringConstant.Error_MatchFingerprint);
                    return(false);
                }

                return(true);
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                var res = TesoWin32Helper.TcDeleteHDL(objHdl);
            }
        }
Exemplo n.º 3
0
        /// <summary>
        /// To get feature.
        /// </summary>
        /// <returns></returns>
        public bool DoFeature()
        {
            try
            {
                // Get Hardware Handle
                objHdl = GetDevHDL();
                if (objHdl <= 0)
                {
                    MessageBox.Show(StringConstant.Error_NotFoundHDL);
                    return(false);
                }

                // 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);
                }

                return(true);
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                var res = TesoWin32Helper.TcDeleteHDL(objHdl);
            }
        }
Exemplo n.º 4
0
        /// <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);
            }
        }
Exemplo n.º 5
0
        /// <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);
            }
        }
Exemplo n.º 6
0
 /// <summary>
 /// Gets the dev HDL.
 /// </summary>
 /// <returns></returns>
 private int GetDevHDL()
 {
     /*------创建COM设备控制句柄 USB(0,0,0,0) ------*/
     objHdl = TesoWin32Helper.TcCreateHDL(0, 0, 0, 0);
     return(objHdl);
 }