Visual Basic.NET - Validacion huella dactilar

   
Vista:

Validacion huella dactilar

Publicado por xio1202 (1 intervención) el 30/11/2012 05:19:28
stimados necesito responder a mis dudas,

Tengo dos tablas huella y usuario:

huella: id_usuario(FK) char(11), huella binary(8000)

usuario: id_usuario(fk) char(11), nombre varchar(25), foto varchar(MAX)

Cuando guardo mi huella la guardo con el codigo del usuario para luego comparla al momento de verificar y asi no tener problemas:

mi duda esta en el siguiente codigo, utilizo un verificationcontrol, para validar la huella, cuando realizo la verificacion solo me toma la primera huella de mi BD, no se si mi recorrido al dataset estara fallido, es decir si verifico solo me muestra los datos del primer usuario registrado, el resto no, como recorro mi dataset de tal manera que verifique las demas huellas?, porque solo me verifica solo una huella cuando tengo tres?:

Public Class frmbuscausuario
Public TempRecuperada As Byte() = Nothing
Public nombre As String
Public foto As String
Private usuarioglb As String
Private Sub frmbuscausuario_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

End Sub

Private Sub recuperar()
Dim strConnect As String
Dim ret As New DataSet
Dim tamaño As Integer
strConnect = "Data Source=PC; user id=sa; password=123456; Initial Catalog=Personal"
Dim conn As SqlConnection = New SqlConnection(strConnect)

'''selecciono los parametro nombre, huella y foto de las dos tablas y las comparo por el id_usuario

Dim Str_consulta As String = "select b.nombre,a.huella,b.foto from huella a, usuario b where b.id_usuario = a.id_usuario"
Dim myCommand As SqlCommand = New SqlCommand(Str_consulta, conn)
Try

conn.Open()

Dim AdaptadorSQL As New SqlDataAdapter

myCommand.CommandTimeout = 600
AdaptadorSQL.SelectCommand = myCommand
AdaptadorSQL.Fill(ret)
For i = 0 To ret.Tables(0).Rows.Count - 1 'recorrido del dataset
If Not (ret.Tables(0).Rows.Count = 0) Then
'TempRecuperada = ret.Tables(0).Rows(i).Item("huella")
nombre = ret.Tables(0).Rows(i).Item("nombre")
foto = ret.Tables(0).Rows(i).Item("foto")
tamaño = nombre.Length
Else
MsgBox("Usuario no registrado en el sistema")
End If
Next
conn.Close()

Catch SQLexc As SqlException
MsgBox(SQLexc.ToString)

End Try
End Sub

Private Sub VerificationControl1_OnComplete(ByVal Control As Object, ByVal FeatureSet As DPFP.FeatureSet, ByRef EventHandlerStatus As DPFP.Gui.EventHandlerStatus) Handles VerificationControl1.OnComplete
Dim ver As New DPFP.Verification.Verification()
Dim res As New DPFP.Verification.Verification.Result()
Dim tempRec As DPFP.Template
Dim tama As Integer
refrescartxt()
recuperar()
If Not (TempRecuperada Is Nothing) Then
tempRec = New DPFP.Template()
tempRec.DeSerialize(TempRecuperada)
tama = tempRec.Size
If Not tempRec Is Nothing Then ' Get template from storage.
ver.Verify(FeatureSet, tempRec, res) ' Compare feature set with particular template.

If res.Verified Then
EventHandlerStatus = DPFP.Gui.EventHandlerStatus.Success
Me.Label1.Text = nombre.ToString 'mostrando datos en etiquetas
Me.PictureBox1.Image = Image.FromFile(foto)

End If
End If
End If
If Not res.Verified Then EventHandlerStatus = DPFP.Gui.EventHandlerStatus.Failure

End Sub
Private Sub refrescartxt()
Label1.Refresh()
PictureBox1.Refresh()

End Sub
End Class
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder