[AYUDA][BATCH] Poner contraseña con maximo de intentos en batch

Iniciado por Rikosky, 4 Mayo 2014, 20:21 PM

0 Miembros y 1 Visitante están viendo este tema.

Rikosky

Buenas a todos, queria proteger un archivo con un batch, pero con un maximo de intentos, esto es relativamente sencillo, pero el problema es que cuando cierras el batch y lo vuelves a abrir tienes otra vez todos los intentos disponibles, para que me entendais mejor os dejare el codigo que yo he hecho, el problema es que no se mucho de esto y lo he hecho poniendo los intentos en un archivo de texto aparte, me gustaria saber si se puede hacer sin crear archivos fuera del .bat. Gracias a todos!

@echo off
if NOT EXIST "Control{2120-D}.txt" goto crear
:Rikosky
title Contrase¤a (By: Rikosky)
color 0C
for /f "tokens=*" %%c in (Control{2120-D}.txt) do (set c=%%c)
if %c% LEQ 0 goto mal
cls
echo Introduce la contrase¤a, tienes %c% intentos restantes.
echo.
set/p contrasena=
if "%contrasena%"=="CONTRASEÑA DESEADA" goto bien
set/a c=%c%-1
attrib -h -s "Control{2120-D}.txt"
echo.%c%>"Control{2120-D}.txt"
attrib +h +s "Control{2120-D}.txt"
goto Rikosky
exit
:crear
cls
echo.3>"Control{2120-D}.txt"
attrib +h +s "Control{2120-D}.txt"
goto Rikosky
:reset
cls
attrib -h -s "Control{2120-D}.txt"
echo.3>"Control{2120-D}.txt"
attrib +h +s "Control{2120-D}.txt"
set clave=Rikosky
goto Rikosky
:bien
attrib -h -s "Control{2120-D}.txt"
echo.3>"Control{2120-D}.txt"
attrib +h +s "Control{2120-D}.txt"
start http://www.ProAny.es.tl/Batch.htm
exit
:mal
cls
title ACCESO BLOQUEADO (By: Rikosky)
color 4F
echo.
echo    CONTRASE¥A INCORRECTA, TE HAS QUEDADO SIN INTENTOS!!
echo.
echo.
echo  ACCESO BLOQUEADO // ACCESO BLOQUEADO // ACCESO BLOQUEADO
set/p clave=
if "%clave%"=="CONTRASEÑA PARA RESETEAR INTENTOS" goto reset
exit

PedroDJavier

Puedes hacerlo pero no con el script en si solo si esta compilado con Quick batch file compiler;

QBFC implementa una variable de sistema llamada %MYFILES% pues ahi puedes crear el archivo que diga cuantos intentos quedan de esa forma si ese .exe te lo llevas a cualquier PC pues seguiran quedando los mismos intentos.

Espero haberme explicado,
Un saludo

Rikosky

Cita de: PedroDJavier en  6 Mayo 2014, 17:43 PM
Puedes hacerlo pero no con el script en si solo si esta compilado con Quick batch file compiler;

QBFC implementa una variable de sistema llamada %MYFILES% pues ahi puedes crear el archivo que diga cuantos intentos quedan de esa forma si ese .exe te lo llevas a cualquier PC pues seguiran quedando los mismos intentos.

Espero haberme explicado,
Un saludo

Mirare a ver si me aclaro a hacerlo, gracias por tu ayuda :)

daryo

#3
CitarQBFC implementa una variable de sistema llamada %MYFILES% pues ahi puedes crear el archivo que diga cuantos intentos quedan de esa forma si ese .exe te lo llevas a cualquier PC pues seguiran quedando los mismos intentos

eso no va a servir .con %MYFILES% cuando se abre el exe extrae todos los archivos en el directorio %tmp% y cuando accedes desde el batch accedes al archivo temporal .el archivo nunca se va apoder modificar cuando se crea el exe (al menos desde batch), si no quieres crear archivos puedes intentar con el registro de windows.

como idea te dejo que cree un archivo oculto cuando acaben todos los intentos y compruebes si existe es mas simple que manejar archivos solo ver si existe o no :P
Código (dos) [Seleccionar]

echo > archivo
attrib -r -a -s -h archivo
if exist archivo goto FinIntentos
buenas