O pacote sgcBiometrics adiciona um novo recurso para a próxima versão 1.4.0, agora você pode Enumerar quais Cadastros o pool de sensores selecionado possui. Esse método funciona para pools de sensores System e Private.
Antes disso, você não sabia se uma amostra biométrica já estava armazenada no seu banco de dados, exceto se tentasse cadastrar a digital novamente. Agora você pode primeiro enumerar quais digitais foram armazenadas no seu banco de dados.
Enumerar Cadastros
FingerPrint.EnumEnrollments;
procedure TFRMFingerPrint.FingerPrintEnumEnrollments(Sender: TObject; const
aIdentity: WINBIO_IDENTITY; const aSubFactor: WINBIO_BIOMETRIC_SUBTYPE;
const aNum, aCount: Integer);
var
vSubFactor: string;
begin
case aSubfactor of
WINBIO_ANSI_381_POS_RH_THUMB: vSubFactor := 'RH_THUMB';
WINBIO_ANSI_381_POS_RH_INDEX_FINGER: vSubFactor := 'RH_INDEX_FINGER';
WINBIO_ANSI_381_POS_RH_MIDDLE_FINGER: vSubFactor := 'RH_MIDDLE_FINGER';
WINBIO_ANSI_381_POS_RH_RING_FINGER: vSubFactor := 'RH_RING_FINGER';
WINBIO_ANSI_381_POS_RH_LITTLE_FINGER: vSubFactor := 'RH_LITTLE_FINGER';
WINBIO_ANSI_381_POS_LH_THUMB: vSubFactor := 'LH_THUMB';
WINBIO_ANSI_381_POS_LH_INDEX_FINGER: vSubFactor := 'LH_INDEX_FINGER';
WINBIO_ANSI_381_POS_LH_MIDDLE_FINGER: vSubFactor := 'LH_MIDDLE_FINGER';
WINBIO_ANSI_381_POS_LH_RING_FINGER: vSubFactor := 'LH_RING_FINGER';
WINBIO_ANSI_381_POS_LH_LITTLE_FINGER: vSubFactor := 'LH_LITTLE_FINGER';
end;
DoLog('EnumEnrollment: ' + vSubFactor);
end;
Primeiro chame o método EnumEnrollments e depois manipule o evento OnEnumEnrollments e aqui você receberá quais digitais estão armazenadas no seu pool. Verifique o parâmetro aSubFactor para saber qual é a digital (polegar direito, indicador direito...) e há 2 parâmetros que mostram quantas digitais estão cadastradas e o número da digital passada ao evento.
Aqui está uma captura de tela do aplicativo demo mostrando como a Enumeração de Cadastros funciona.

