Como bloquear aplicación en visual basic

Lo que tengo en este momento es un formulario donde se pide una contraseña de ingreso y si se escribe 3 veces mal el formulario se cierra el problema es que luego se puede volver a ejecutar y así cuantas veces se quiera pero deseo ver si se puede lograr que al escribirla 3 veces mal el formulario se cierre pero que se bloquee cierta cantidad de tiempo para volver a introducir la contraseña.

1 Respuesta

Respuesta
1
Si los usuarios/claves los tienes en algún fichero externo al programa (tipo base de datos), sería tan sencillo como poner un campo de 'fechaHoraDeBloqueo' que se actualizase cuando se teclee la tercera vez mal.
De no ser así probaría a crear un fichero en la carpeta temporal, llamémosle 'bloqueo.log', que comprobaría al entrar en el programa y vería si ha pasado el tiempo suficiente. Para crear el bloque sería algo así:
sub CreaFicheroBloqueo()
   dim nf as integer
   nf=freefile
   open environ("temp") & "\bloqueo.txt" for output as nf
   close nf
end sub
Y para comprobar si existe y han pasado menos de 15 segundos haría:
function MiraSegundosFicheroBloqueo() as long
   dim f as date
   on error resume next
   f=filedatetime(environ("temp") & "\bloqueo.txt")
   if err<>0 then
      MiraSegundosFicheroBloqueo = 999999 ' No existe el fichero... usuario no bloqueado
     else
      MiraSegundosFicheroBloqueo = datediff("s",f,now())
   end if
    on error goto 0
end sub
Sólo te faltaría que al entrar en el programa comprobases los segundos transcurridos desde que se creó el fichero de bloqueo.
if MiraSegundosFicheroBloqueo()<60 then
    msgbox "Usuario bloqueado durante 60 segundos"
    end
end if

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas