Skip to content

Login - Inicio de sesión personalizado cronometrado a 50 segundos por cada tres intentos fallidos

License

Notifications You must be signed in to change notification settings

DanielRivera03/login-personalizado-cronometrado

Repository files navigation

Login Personalizado Cronometrado C Sharp (C#)

lg1

Descripción general del proyecto:

animacion-sistema

Cansado de ver los mismos inicios de sesión comunes y corrientes, una práctica solución es implementar un login personalizado y cronometrado que sea capaz de controlar el número de intentos de cada uno de los usuarios válidados dentro de la aplicación, este práctico inicio de sesión implementa un contador de N intentos, y al cumplir 3 intentos permitidos, la aplicación se bloquea por 50 segundos para que el usuario pueda volver a intentar loguearse. El número de intentos así como su duración es totalmente personalizable, usted puede adecuarlo a sus proyectos como usted considere conveniente. Para ello debe modificar ciertas líneas de código dentro de la aplicación:

if (ContadorIntentos == 3) // DONDE 3 ES EL N NUMERO DE INTENTOS A CUMPLIRSE
{
      CuentaRegresiva.Start(); // INICIO DE CUENTA REGRESIVA | BLOQUEO DE ACCESO
      // LLAMADA DE CRONOMETRO CONTROLADO -> VENTANA EMERGENTE
      Form Bloquear = new BloqueoSesion();
      Bloquear.Show();
      // BLOQUEO TOTAL DE CONTROLES DE ACCESO
      txtPassUsuario.Enabled = false;
      txtUsuarioLogin.Enabled = false;
      btnIniciarSesion.Enabled = false;
}
 private void CuentaRegresiva_Tick(object sender, EventArgs e)
 {
        // DECREMENTO EN UNO CUENTA REGRESIVA
         InicializandoConteo--;
         // SI CUENTA REGRESIVA LLEGA A CERO, ENTONCES...
         if (InicializandoConteo == 0)
         {
              ContadorIntentos = 0;           // RESETEANDO CONTADOR DE INTENTOS
              CuentaRegresiva.Stop();         // DETENER CUENTA REGRESIVA
              InicializandoConteo = 51;       // INICIALIZANDO NUEVAMENTE CUENTA REGRESIVA
              // HABILITANDO TODOS LOS CONTROLES DE ACCESO
              txtPassUsuario.Enabled = true;  
              txtUsuarioLogin.Enabled = true;
              btnIniciarSesion.Enabled = true;
/*
  Y SE REPITE EL CICLO
 << IMPORTANTE: INICIALIZACION DE CONTEO EN 51, PARA QUE CONTEO DE VENTANA 
   EMERGENTE SEA EXACTAMENTE IGUAL AL CONTEO DEL FORMULARIO DE ACCESO >>
                   -- CASO CONTRARIO CONTEO ES DISPAREJO -- 
 */
}

En el primer bloque de código presentado anteriormente específicamente la línea de código número 173 del archivo form1.cs usted podrá modificar el número de intentos, además de modificar la línea número 251 del segundo bloque de código dentro de el evento CuentaRegresiva_Tick puede modificar la duración en segundos para la cuenta regresiva. Debe tomar en cuenta que en este archivo siempre debe aumentar en 1 la inicialización del cronometro, de lo contrario el conteo será disparejo y los controles se habilitarán antes de que la cuenta regresiva principal acabe.

Posteriormente debe ubicarse en el archivo BloqueoSesion.cs y dirigirse a la línea número 50 y modificar el valor de esa variable por el número exacto de conteo de cronómetro. Este punto es importante que se respete.

Extras:

Se ha hecho uso de formularios emergentes personalizados, configurados para mostrarse como mensajes de alerta para los usuarios, siéntase en libertad de modificarlos y adecuarlos a sus necesidades.
A continuación algunas capturas de dichos mensajes de alerta

al1 al2 al3 al7

De igual forma se añadieron algunos efectos de sonido, tome en cuenta que debe modificar el archivo llamado ControlRutaNotificaciones.cs línea de código número 30 donde deberá modificar la ruta presentada por la ruta de su ordenador.

public String RutaNotificaciones()
{
    String ControlRutaPC = "dany__000/Desktop/Full Calzado S.A de C.V/Notificaciones/"; // MODIFICAR RUTA 
    return ControlRutaPC;
}

CSharp

Proyecto desarrollado bajo el lenguaje de programación C Sharp (C#), compartido y liberado para fines educativos.


*** Fecha de Subida: 29 mayo 2020 | Fecha Última Modificación: 29 mayo 2020 ***

About

Login - Inicio de sesión personalizado cronometrado a 50 segundos por cada tres intentos fallidos

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages