예제 #1
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            if (!WinBioConfiguration.DatabaseExists(Shared.DatabaseId))
            {
                MessageBox.Show(Properties.Resources.InitializeDatabase, Properties.Resources.PluginError, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

            errorProvider.Clear();

            if (String.IsNullOrEmpty(tbxPassword.Text))
            {
                errorProvider.SetError(tbxPassword, FingerprintPlugin.Properties.Resources.EmptyPasswordError);
                return;
            }
            else
            {
                errorProvider.SetError(tbxPassword, String.Empty);

                if (tbxPassword.Text != tbxVerif.Text)
                {
                    errorProvider.SetError(tbxVerif, FingerprintPlugin.Properties.Resources.PasswordMismatchError);
                    return;
                }
                else
                {
                    errorProvider.SetError(tbxVerif, String.Empty);
                }
            }

            CheckFinger checkFinger = new CheckFinger();

            var selectedInit = (FingerprintUnit)cbReaderUnit.SelectedItem;

            checkFinger.UnitId          = selectedInit.Id;
            checkFinger.StartEnrollment = true;

            if (checkFinger.ShowDialog() != DialogResult.OK)
            {
                MessageBox.Show(Properties.Resources.FingerprintConfigurationError, Properties.Resources.PluginError, MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            DbMasterKeyManager dbManager = new DbMasterKeyManager();

            dbManager.AddOrUpdate(DatabaseName, tbxPassword.Text, checkFinger.TemplateFingerGuid, checkFinger.UnitId);
            dbManager.Save();


            this.DialogResult = DialogResult.OK;
            this.Close();
        }
예제 #2
0
        public override byte[] GetKey(KeyProviderQueryContext ctx)
        {
            //MessageBox.Show(Properties.Resources.FingerprintConfigurationError, Properties.Resources.PluginError, MessageBoxButtons.OK, MessageBoxIcon.Error);
            string pwd = string.Empty;

            string             dbName = Path.GetFileNameWithoutExtension(ctx.DatabasePath);
            DbMasterKeyManager db     = new DbMasterKeyManager();

            CheckFinger checkFinger = new CheckFinger();

            checkFinger.UnitId = db.GetUnitId(dbName);

            if (checkFinger.ShowDialog() == DialogResult.OK)
            {
                pwd = db.GetMasterKey(dbName, checkFinger.TemplateFingerGuid);
            }

            return(Encoding.ASCII.GetBytes(pwd));
        }