elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Tutorial básico de Quickjs


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Ayuda. Contaseña en batch
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda. Contaseña en batch  (Leído 3,330 veces)
Lockup

Desconectado Desconectado

Mensajes: 7



Ver Perfil
Ayuda. Contaseña en batch
« en: 2 Julio 2011, 02:03 am »

Yo de nuevo  :-[

Pues he estado tratando de crear un batch que te permita crear una contraseña (opcional) para acceder posteriormente al batch

de encabezado tengo
Código:
@echo off
if not exist C:\others\cook\passcript (goto :menu)
if exist C:\others\cook\passcript (goto :entrar)
de manera que si no existe la ruta entre normal al batch pero en el menu del batch les doy la opción de crear contraseña y para eso tengo lo siguiente

Código:
:create
MD C:\others\cook\passcript
set /p pass=Escribe tu clave:
cd C:\others\cook\passcript
echo title Password > pass.bat
echo %pass% >> pass.bat
echo Password Creado Satisfactoriamente
pause
goto entrar
Efectivamente me la crea y hasta aqui todo va bien xd..

Despues esto me lleva a donde me piden la contraseña para poder entrar
Código:
:entrar
set /p password=Ingresa tu clave:
call C:\others\cool\passcript\pass.bat
if %password%==%pass% (goto :menu) else cls & goto fail
Cuando escribo la contraseña que he creado... entra y todo perfecto, pero cuando cierro el batch y lo ejecuto otra vez... y escribo la contraseña correcta no entra y se cierra...

No tengo mucho conocimiento sobre que podria hacer en este caso..

Ayuda! D: xd

Gracias!!  ;D


En línea

SuperDraco


Desconectado Desconectado

Mensajes: 2.505


Crew Dragon


Ver Perfil
Re: Ayuda. Contaseña en batch
« Respuesta #1 en: 2 Julio 2011, 03:13 am »

hola, haz el favor de pegar el código entero para buscar el error.

saludos

EDITO: pero bueno, los errores saltan a la vista

echo title(=)Password>"C:\others\cook\passcript\pass.bat"

call C:\others\cool(COOK)\passcript\pass.bat

Goto ( : )fail

La última no tiene mucha importancia, pero... Al menos repasa tu código y corrije los pequeños errores como esos.

De todas formas, esas dos líneas sobretodo la del Call borrala, eso no tiene sentido... El password no se va a reconocer como un comando en el pass.bat, y dará error.

Podrías usar:


Código
  1. :entrar
  2. set /p password=Ingresa tu clave:
  3.  
  4. Type "C:\others\cook\passcript\pass.bat" | findstr "^%password%$" >nul
  5. If %errorlevel% EQU 0 (
  6. goto :menu
  7. ) ELSE (
  8. cls
  9.        Goto :fail
  10. )

Sin ver el código entero, no puedo aventurarme más.
saludos


« Última modificación: 2 Julio 2011, 03:40 am por pitoloko » En línea

No he vuelto, solo estoy de paso.
Lockup

Desconectado Desconectado

Mensajes: 7



Ver Perfil
Re: Ayuda. Contaseña en batch
« Respuesta #2 en: 2 Julio 2011, 05:19 am »

el codigo completo o lo que llevo de el (porque me pare al ver que no funcionaba..)
Código:
@echo off
if not exist C:\others\cook\passcript (goto :menu)
if exist C:\others\cook\passcript (goto :entrar)


:entrar
set /p password=Ingresa tu clave:
 
Type "C:\others\cook\passcript\pass.bat" | findstr "^%password%$" >nul
If %errorlevel% EQU 0 (
goto :menu
) ELSE (
cls
        Goto :fail
)

:menu
echo Elija la unidad donde se encuentra el archivo
echo 1. C:\           2. D:\
echo 3. F:\            4. J:\
echo 5. Crear Clave   6. Salir
set /p var=Escribe el numero de la unidad correspondiente

if %var%==1 (goto :c)
if %var%==2 (goto :d)
if %var%==3 (goto :f)
if %var%==4 (goto :j)
if %var%==5 (goto :crear)


:crear
set /p var=Desea crear una clave: (S/N)

if %var%==s (goto :create)
if %var%==n (goto :menu) else goto menu

:create
MD C:\others\cook\passcript
set /p pass=Escribe tu clave:
cls
cd C:\others\cook\passcript
echo title=Password > pass.bat
echo %pass% >> pass.bat
echo Password Creado Satisfactoriamente
pause
goto entrar


:fail
echo Contraseña incorrecta, intente de nuevo porfavor.
pause
goto :entrar

Hice el cambio que me dijiste, borre call y puse lo que aconsejaste pero ahi si que ni reconoce el password
Código:
:entrar
set /p password=Ingresa tu clave:
 
Type "C:\others\cook\passcript\pass.bat" | findstr "^%password%$" >nul
If %errorlevel% EQU 0 (
goto :menu
) ELSE (
cls
        Goto :fail
)

Pero usando el que tenia antes (sin el call)
Código:
if %password%==%pass% (goto :menu) else goto :fail
pero solo sirve por una vez..

Tambien elimine lo de Title.. no vea importancia.. o si (?)

Saludos,  ;)
En línea

SuperDraco


Desconectado Desconectado

Mensajes: 2.505


Crew Dragon


Ver Perfil
Re: Ayuda. Contaseña en batch
« Respuesta #3 en: 2 Julio 2011, 05:41 am »


Hice el cambio que me dijiste, borre call y puse lo que aconsejaste pero ahi si que ni reconoce el password

Te falla por esto:

Código:
echo %pass% >> pass.bat

Los espacios cuentan como caracteres, entonces, se copia la contraseña + 1 espacio al pass.bat, por eso no funciona de la forma que te dije, tienes que escribir la contraseña y un espacio, pero bueno eso se arregla así de fácil:

Código:
echo %pass%>>pass.bat

(A esos pequeños errores me refería, repasate mejor tus próximos bats  :P)


Tambien elimine lo de Title.. no vea importancia.. o si (?)

No se si sabes el funcionamiento de CALL, y yo no lo se explicar bien  :xD, bueno de todas maneras lo de title te lo dije para ahorrarte líneas innecesarias, pero el call no te iba a funcionar con ese pass.bat, daría un error parecido a esto:

Código:
"contraseña" no se reconoce como un comando interno o externo, programa o archivo por lotes ejecutable.

He probado el code y me ha funcionado bien, solo tienes que quitarle los espacios a la línea que te dije.

Saludos!
En línea

No he vuelto, solo estoy de paso.
Lockup

Desconectado Desconectado

Mensajes: 7



Ver Perfil
Re: Ayuda. Contaseña en batch
« Respuesta #4 en: 2 Julio 2011, 19:02 pm »

Tenias razón Si funciona... Gracias  :-* :xD

Aun soy algo ignorante en esto...  :xD

Y pues si, repasaré los proximos bats.. soy algo impaciente y cuando veo que no me funciona me canso de revisar y revisar >.<

Pero, en fin.. Gracias  ;D

Código:
echo %pass% >> pass.bat

no me habia dado cuenta.. eso fue lo que lo solucuiono :)
« Última modificación: 2 Julio 2011, 21:29 pm por Lockup » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[Ayuda] alguno que sepa programar en batch ayuda...
Scripting
taton 5 3,862 Último mensaje 20 Septiembre 2006, 01:43 am
por taton
Instalar sin contaseña de super user
GNU/Linux
777Rubenix777 2 3,698 Último mensaje 25 Octubre 2010, 15:19 pm
por 777Rubenix777
(Soclucionado) [BATCH] Ayuda con este batch! (%ERRORLEVEL%)
Scripting
SuperDraco 5 13,867 Último mensaje 23 Enero 2011, 15:23 pm
por SuperDraco
OBTENER CONTASEÑA CON EL ID SOFTWARE UNICO
Software
Inter-ard 0 1,335 Último mensaje 1 Agosto 2013, 06:32 am
por Inter-ard
CAMBIO DE CONTASEÑA A USUARIO ESTABLECIDO EN C++
Programación C/C++
JOSH12 1 3,225 Último mensaje 24 Julio 2022, 22:44 pm
por Eternal Idol
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines