Any know how to convert this code into sql server 2008 [FFV]

General information about Neurotechnology and its software

Any know how to convert this code into sql server 2008 [FFV]

Postby michaellee » Mar 12, 2017 05:24

Code: Select all
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

using Neurotec.Biometrics;
using Neurotec.Gui;

namespace CSharpSample
{
   public partial class MainForm : Form
   {
      Nffv _engine;
      string _userDatabaseFile;
      UserDatabase _userDB;

      public MainForm(Nffv engine, string userDatabaseFile)
      {
         _engine = engine;

         _userDatabaseFile = userDatabaseFile;
         try
         {
            _userDB = UserDatabase.ReadFromFile(userDatabaseFile);
         }
         catch
         {
            _userDB = new UserDatabase();
         }

         InitializeComponent();
      }

      private void MainForm_Load(object sender, EventArgs e)
      {
         foreach (NffvUser engineUser in _engine.Users)
         {
            string id = engineUser.Id.ToString();
            UserRecord userRec = _userDB.Lookup(engineUser.Id);
            if (userRec != null)
            {
               id = userRec.Name;
            }
            lbDatabase.Items.Add(new CData(engineUser, id));
         }
         if (lbDatabase.Items.Count > 0)
            lbDatabase.SelectedIndex = 0;
      }

      internal class EnrollmentResult
      {
         public NffvStatus engineStatus;
         public NffvUser engineUser;
      };

      private void btnEnroll_Click(object sender, EventArgs e)
      {
         EnrollForm enrollDlg = new EnrollForm();
         if (enrollDlg.ShowDialog() == DialogResult.OK)
         {
            try
            {
               RunWorkerCompletedEventArgs taskResult = BusyForm.RunLongTask("Waiting for fingerprint ...", new DoWorkEventHandler(doEnroll),
                  false, null, new EventHandler(CancelScanningHandler));
               EnrollmentResult enrollmentResult = (EnrollmentResult)taskResult.Result;
               if (enrollmentResult.engineStatus == NffvStatus.TemplateCreated)
               {
                  NffvUser engineUser = enrollmentResult.engineUser;
                  string userName = enrollDlg.UserName;
                  if (userName.Length <= 0)
                  {
                     userName = engineUser.Id.ToString();
                  }

                  _userDB.Add(new UserRecord(engineUser.Id, userName));
                  try
                  {
                     _userDB.WriteToFile(_userDatabaseFile);
                  }
                  catch { }

                  pbExtractedImage.Image = engineUser.GetBitmap();
                  lbDatabase.Items.Add(new CData(engineUser, userName));
                  lbDatabase.SelectedIndex = lbDatabase.Items.Count - 1;
               }
               else
               {
                  NffvStatus engineStatus = enrollmentResult.engineStatus;
                  MessageBox.Show(string.Format("Enrollment was not finished. Reason: {0}", engineStatus));
               }
            }
            catch (Exception ex)
            {
               MessageBox.Show(ex.Message);
            }
         }
      }

      private void doEnroll(object sender, DoWorkEventArgs args)
      {
         EnrollmentResult enrollmentResults = new EnrollmentResult();
         enrollmentResults.engineUser = _engine.Enroll(20000, out enrollmentResults.engineStatus);
         args.Result = enrollmentResults;
      }

      internal class VerificationResult
      {
         public NffvStatus engineStatus;
         public int score;
      };

      private void btnVerify_Click(object sender, EventArgs e)
      {
         if (lbDatabase.SelectedIndex < 0)
         {
            MessageBox.Show("Please select a record from the database.");
         }
         else
         {
            try
            {
               RunWorkerCompletedEventArgs taskResult = BusyForm.RunLongTask("Waiting for fingerprint ...", new DoWorkEventHandler(doVerify),
                  false, ((CData)lbDatabase.SelectedItem).EngineUser, new EventHandler(CancelScanningHandler));
               VerificationResult verificationResult = (VerificationResult)taskResult.Result;
               if (verificationResult.engineStatus == NffvStatus.TemplateCreated)
               {
                  if (verificationResult.score > 0)
                  {
                     MessageBox.Show(string.Format("{0} verified.
Fingerprints match. Score: {1}", ((CData)lbDatabase.SelectedItem).Name, verificationResult.score));
                  }
                  else
                  {
                     MessageBox.Show(string.Format("{0} not verified.
Fingerprints do not match. Score: {1}", ((CData)lbDatabase.SelectedItem).Name, verificationResult.score));
                  }
               }
               else
               {
                  MessageBox.Show(string.Format("Verification was not finished. Reason: {0}", verificationResult.engineStatus));
               }
            }
            catch (Exception ex)
            {
               MessageBox.Show(ex.Message);
            }
         }
      }

      private void doVerify(object sender, DoWorkEventArgs args)
      {
         VerificationResult verificationResult = new VerificationResult();
         verificationResult.score = _engine.Verify((NffvUser)args.Argument, 20000, out verificationResult.engineStatus);
         args.Result = verificationResult;
      }

      private void CancelScanningHandler(object sender, EventArgs e)
      {
         _engine.Cancel();
      }

      private void btnDeleteUser_Click(object sender, EventArgs e)
      {
         if (lbDatabase.SelectedIndex < 0)
         {
            MessageBox.Show("Please select a record from the database.");
         }
         else
         {
            _userDB.Remove(_userDB.Lookup(((CData)lbDatabase.SelectedItem).ID));
            try
            {
               _userDB.WriteToFile(_userDatabaseFile);
            }
            catch { }

            _engine.Users.RemoveAt(lbDatabase.SelectedIndex);
            lbDatabase.Items.RemoveAt(lbDatabase.SelectedIndex);
            if (lbDatabase.Items.Count > 0)
               lbDatabase.SelectedIndex = 0;
         }
      }

      private void btnClearDatabase_Click(object sender, EventArgs e)
      {
         if (MessageBox.Show("All records will be deleted from database. Do you want to continue?", "Confirm delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes)
         {
            return;
         }

         _engine.Users.Clear();
         lbDatabase.Items.Clear();

         _userDB.Clear();
         try
         {
            _userDB.WriteToFile(_userDatabaseFile);
         }
         catch { }
      }

      private void btnSettings_Click(object sender, EventArgs e)
      {
         SettingsForm settingsForm = new SettingsForm();
         settingsForm.LoadFromEngine(_engine);
         if (settingsForm.ShowDialog() == DialogResult.OK)
         {
            settingsForm.SaveToEngine(_engine);
         }
      }

      private void btnAbout_Click(object sender, EventArgs e)
      {
         AboutForm aboutForm = new AboutForm();
         aboutForm.ShowDialog();
      }

      private void lbDatabase_DoubleClick(object sender, EventArgs e)
      {
         if (lbDatabase.SelectedItem != null)
         {
            CData userData = (CData)lbDatabase.SelectedItem;
            UserInfoForm userInfoForm = new UserInfoForm();
            userInfoForm.UserName = userData.Name;
            userInfoForm.UserFingerprintImage = userData.Image;
            userInfoForm.ShowDialog();
         }
      }

        private void pbExtractedImage_Click(object sender, EventArgs e)
        {

        }

        private void label1_Click(object sender, EventArgs e)
        {

        }
   }

   class CData : IDisposable
   {
      private NffvUser _engineUser;
      private Bitmap _image;
      private string _name;

      public CData(NffvUser engineUser, string name)
      {
         _engineUser = engineUser;
         _image = engineUser.GetBitmap();
         _name = name;
      }

      public NffvUser EngineUser
      {
         get
         {
            return _engineUser;
         }
      }

      public Bitmap Image
      {
         get
         {
            return _image;
         }
      }

      public int ID
      {
         get
         {
            return _engineUser.Id;
         }
      }

      public string Name
      {
         get
         {
            return _name;
         }
         set
         {
            _name = value;
         }
      }

      public override string ToString()
      {
         return Name;
      }

      #region IDisposable Members

      public void Dispose()
      {
         if (_image != null)
         {
            _image.Dispose();
            _image = null;
         }
      }

      #endregion
   }
}
michaellee
 
Posts: 1
Joined: Mar 12, 2017 05:18

Re: Any know how to convert this code into sql server 2008 [

Postby MartynasV » Mar 13, 2017 13:20

Hello,

Free Fingerprint Verification SDK only allows up to 10 fingerprints in database and perform only verification task. Those fingerprint templates are saved to custom database file and you can't choose other way to store templates. If you want to use SQL Server database, then you should try and download our Neurotec SDK 30 days trial: http://www.neurotechnology.com/download ... _sdk_trial .
Martynas V
Neurotechnology
MartynasV
Neurotechnology
 
Posts: 264
Joined: Feb 27, 2015 11:24
Location: Vilnius, Lithuania


Return to Public

Who is online

Users browsing this forum: No registered users and 2 guests

cron