Hace unos días me tope con que tenia que utilizar un detector de Huella de la marca DigitalPersona para un proyecto hay escasa documentación en la red así que voy a contar los pasos que seguí para hacer funcionar el bicho.
Primero hay que irse a la web de digital persona y descargarse el SDK o bien RTE el primero nos sirve para desarrollar la aplicacion (contiene la librerias y ejemplos necesarios) el segundo para poner en una maquina que corre el programa para que funcione el detector es importante mencionar que si el RTE no esta instalado el detector no enciende y este (el RTE) sirve como driver para que la maquina reconozca el detector y por supuesto para que se conecte con el sistema desarrollado
Esto se puede encontrar por aqui
http://www.digitalpersona.com/Biometrics/SDK-Products/One-Touch-Software-Development-Kits-(SDKs)/
Luego de instalar el SDK alli se indica y unicamente se deben seguir las instrucciones, tenemos que importar las librerias DPFpGuiNet, DPFpShrNet, DpfpverNet a nuestro proyecto agregandolos en la referencia esto se encuentra en click derecho en el proyecto propiedades en la ficha referencia y agregar o en agregar referencia. las librerias por default luego de instalar el SDK estan en C:\Archivos de programa\DigitalPersona\One Touch SDK\.NET\Bin
Luego es de crear las formas necesarias en el ejemplo
Tiene dos controles importantes
Verification
es para verificar si la hulla es la correcta el evento que ejecuta la verificacion es on complete
Enrrolment
es para agregar una huella al registro para agregar una huella de manera correcta lo hace creando u promedio de 4 distintos scans el evento en onenrollment
para el ejemplo se crea una tabla en la base de datos con las siguientes características ya que el template se guarda como dato binario
CREATE TABLE [dbo].[pruebaDigitalPersona] (
[Usuario] [char] (25) COLLATE Modern_Spanish_CI_AS NULL ,
[huella] [varbinary] (8000) NULL
) ON [PRIMARY]
GO
el codigo pueden descargarlo en el siguiente enlace
http://solocodigo.com/47300/ejemplo-utilizacion-sdk-digitalpersona/
https://skydrive.live.com/redir.aspx?cid=8e1beb896bf98b17&resid=8E1BEB896BF98B17!192&parid=root
8 comentarios:
Estimado ... super bueno el ejemplo pero tengo una duda como deveria hacerlo si en vez de escribir el nombre de usuario.. me buscara directamente con la huella el nombre aa quien le pertenese???????
Lo que se me ocurre así rápido seria mandar a traer las huellas+usuario de la base de datos (o una parte (paginando) para no sobrecargar el trafico y la memoria)
luego se podria hacer la verificacion para cada registro que se trae con el evento verify del control verification. si es positivo ya tenes tu usuario si no buscas al siguiente hasta encontrarlo o no
Excelente ejemplo... y podrías brindarnos un ejemplo de como seria para que reconozca la huella solamente
Estimado, podría ser mas especifico en la creación de la base de datos, lo agradecería muchísimo ya que estoy recién entrando al mundo VBStudio, utilizaba VB6 pero veo que TODO CAMBIO y estoy vuelto mono.
slds.
Para crer la base de datos del ejemplo simple primero con un create
Create database mibase
mibase = nombre de la base de datos
Esto lo podes hacer en la base de datos master.
luego te cambias a la base de datos "mibase"
y ejecutas el script
CREATE TABLE [dbo].[pruebaDigitalPersona] (
[Usuario] [char] (25) COLLATE Modern_Spanish_CI_AS NULL ,
[huella] [varbinary] (8000) NULL
) ON [PRIMARY]
GO
listo la base de datos esta creada y la tabla, para armar la string de conexion podes ver este link
http://www.elguille.info/NET/ADONET/cadena_de_conexion_para_conectar_a_una_base_de_sql_server.htm
la variable que tenes que modificar es strConnect
Hola amigo, excelente articulo, yo hice una prueba con Mysql, y pues agregue el Mysql Connector Net 6.5.4
pero me marca error en el enrollement_onenroll
'convierto el template en bytes y se guarda en la base de datos
Dim temBytes As Byte() = Nothing
Template.Serialize(temBytes)
Me.guardar(temBytes)
El error aparece cuando entra en Me.guardar, este es el error:
No se puede cargar el archivo o ensamblado 'MySql.Data.CF, Version=6.5.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, Retargetable=Yes' ni una de sus dependencias. El nombre de ensamblado o el código base dado no es válido. (Excepción de HRESULT: 0x80131047)
estoy importando lo necesario para la conexion a mi bd
saludos y gracias.
Amigo Muy bueno el ejemplo...
Descargue e instale el SDK y el RTE, cree la base de datos pero al ejecutar el programa cuando doy click en el control EnrollmentControl me dice que la activacion ha sido cancelada por que el lecto no esta conectado... a que se debe esto si ya instalae el RTE ?
hay que hacer algo mas?
Gracias por la ayuda.
@Anonimo1: El ejemplo esta hecho para SQL server 2000, no lo probé con MYSQL podría ser que por allí vaya el problema, puede ser y seria de investigar un poco mas como MySQL almacena el tipo de dato Byte y si es equivalente en SQLserver,por allí podría estar el problema.
@Anonimo2: En lo personal no tuve ningún error de este tipo luego de instalar el RTE, una sugerencia pordia ser revisar tu Hardware o Firmware
Publicar un comentario en la entrada