Visual Basic.NET - controlar intentos permitidos, para ingresar al sistema

 
Vista:

controlar intentos permitidos, para ingresar al sistema

Publicado por Tony (5 intervenciones) el 24/07/2017 19:45:44
Buenas a todos

con este código controlo la entrada al sistema:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Try 'Controlador de errores
 
	'Consulta para seleccionar el registro que cumpla con el criterio de datos.
	Using ConexionX As New OleDbConnection(cadenaConexion)
 
		'Abrimos la conexión a la Base de datos
 
		ConexionX.Open()
 
		'Creamos un comando del tipo SqlCommand y le pasamos la variable que contiene
		'la consulta y la conexión
 
		Dim ConsultaUsuario As String = "Select * From Tbla_Usuario Where  Tipo_usuario =@Tipo_usuario and Nombre_usuario =@Nombre_usuario and Activar_desactivar_usuario = 'SI' "
 
		Using comando As New OleDbCommand(ConsultaUsuario, ConexionX)
 
			'Establecemos valores a los parámetros, en el mismo orden de los valores de la consulta
 
			comando.Parameters.AddWithValue("@Tipo_usuario", cboTipoUsuario.Text)
			comando.Parameters.AddWithValue("@Nombre_usuario", txtNombreUsuario.Text)
 
 
			Dim lector As OleDbDataReader
 
 
			lector = comando.ExecuteReader
 
			If lector.Read = True Then
				frmMenu.Show() 'Muestra el formulario de Menú Principal
				Me.Hide() 'Oculta  el formulario de Acceso es decir Login
 
				If cboTipoUsuario.Text = "ADMINISTRADOR(A)" Then
					frmMenu.ParámetrosToolStripMenuItem.Enabled = True
				End If
 
			Else
				MsgBox("Nombre de Usuario O contraseña son inválidos ")
				txtNombreUsuario.Clear()
				txtContrasenaUsuario.Clear()
				txtNombreUsuario.Focus()
 
 
			End If
 
		End Using
	End Using
 
 
 
Catch ex As Exception
	MsgBox("Error al intentar entrar al sistema")
	MessageBox.Show(ex.Message) 'Muestra el Mensaje de Error
End Try

Necesito un código que me ayuda a controlar, que, si un usuario intenta entrar al sistema, y se equivocó en la contraseña por lo menos 3 veces, que muestre un mensaje similar a este:

Haz superado el número de intentos permitidos, no puede ingresar al sistema, y cierre el sistema.

Gracias
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
Imágen de perfil de jorge
Val: 165
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

controlar intentos permitidos, para ingresar al sistema

Publicado por jorge (77 intervenciones) el 24/07/2017 19:59:09
hola yo lo haria asi.
declaras una variable

dim contador as integer


en el evento load del formulario lo inicializas

contador=0


despues en este bloque de tu codigo empiezas a contar
/////////////////////////////

MsgBox("Nombre de Usuario O contraseña son inválidos ")
txtNombreUsuario.Clear()
txtContrasenaUsuario.Clear()
txtNombreUsuario.Focus()
contador=contador+1

if contador=3 then

MsgBox("Intentos Aagotados",14,"Usuario")

end
end if



saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

controlar intentos permitidos, para ingresar al sistema

Publicado por Tony (5 intervenciones) el 24/07/2017 20:11:54
Gracias por contestar.

el código funciona bien, pero lo raro es la ventana Login se pone mas pequeña, eso está raro. pero sin el código la ventana de login queda en su tamaño normal, cuando entro al sistema.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de jorge
Val: 165
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

controlar intentos permitidos, para ingresar al sistema

Publicado por jorge (77 intervenciones) el 24/07/2017 20:22:05
a cual ventana re refieres al formulario o al msgbox que lanza cuando se agotan los intentos.??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

controlar intentos permitidos, para ingresar al sistema

Publicado por Tony (5 intervenciones) el 24/07/2017 20:23:49
me refiero a la Ventana de Login, es decir el formulario de la entrada al sistema.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Wilfredo Patricio Castillo
Val: 1.239
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

controlar intentos permitidos, para ingresar al sistema

Publicado por Wilfredo Patricio Castillo (720 intervenciones) el 26/07/2017 00:03:34
Si estás usando VB.NET, usa el código que te indicaron como código de VB.NET y no como VB6, supongo que conoces la diferencia.

Saludos cordiales,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

controlar intentos permitidos, para ingresar al sistema

Publicado por Tony (5 intervenciones) el 26/07/2017 15:05:46
yo uso código de código de VB.NET.

eso ta raro, sinceramente,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de jhuorley
Val: 9
Ha aumentado su posición en 13 puestos en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

controlar intentos permitidos, para ingresar al sistema

Publicado por jhuorley (2 intervenciones) el 27/07/2017 00:16:34
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
Dim conteo As Integer = 0 'declarar variable fuera del sub....
Public Sub ingresarsistema()
	Try 'Controlador de errores
 
		'Consulta para seleccionar el registro que cumpla con el criterio de datos.
		Using ConexionX As New OleDbConnection(cadenaConexion)
 
			'Abrimos la conexión a la Base de datos
 
			ConexionX.Open()
 
			'Creamos un comando del tipo SqlCommand y le pasamos la variable que contiene
			'la consulta y la conexión
 
			Dim ConsultaUsuario As String = "Select * From Tbla_Usuario Where  Tipo_usuario =@Tipo_usuario and Nombre_usuario =@Nombre_usuario and Activar_desactivar_usuario = 'SI' "
 
			Using comando As New OleDbCommand(ConsultaUsuario, ConexionX)
 
				'Establecemos valores a los parámetros, en el mismo orden de los valores de la consulta
 
				comando.Parameters.AddWithValue("@Tipo_usuario", cboTipoUsuario.Text)
				comando.Parameters.AddWithValue("@Nombre_usuario", txtNombreUsuario.Text)
 
 
				Dim lector As OleDbDataReader
 
 
				lector = comando.ExecuteReader
 
				If lector.Read = True Then
					frmMenu.Show() 'Muestra el formulario de Menú Principal
					Me.Hide() 'Oculta  el formulario de Acceso es decir Login
 
					If cboTipoUsuario.Text = "ADMINISTRADOR(A)" Then
						frmMenu.ParámetrosToolStripMenuItem.Enabled = True
					End If
 
				Else
 
 
					'//modificaciones 
					conteo += 1 'cada vez que ingresa mal los datos se incrementa
					If conteo > 3 Then
						MsgBox("Haz superado el número de intentos permitidos, no puede ingresar al sistema, y se cerrará automaticamente  ")
						Me.Close() 'se cierra el formulario
					Else
						MsgBox("Nombre de Usuario O contraseña son inválidos ")
						txtNombreUsuario.Clear()
						txtContrasenaUsuario.Clear()
						txtNombreUsuario.Focus()
					End If
				End If
 
			End Using
		End Using
 
 
 
	Catch ex As Exception
		MsgBox("Error al intentar entrar al sistema")
		MessageBox.Show(ex.Message) 'Muestra el Mensaje de Error
	End Try
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

controlar intentos permitidos, para ingresar al sistema

Publicado por Tony (5 intervenciones) el 31/07/2017 00:17:36
gracias jhuorley

resuelto
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar