Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: _carlos_ en 9 Diciembre 2008, 01:32 am



Título: Login.btm Script para 4DOS
Publicado por: _carlos_ en 9 Diciembre 2008, 01:32 am
Les dejo mi primer script para 4dos.
Lo que hace es simular una autenticación, al presionar las teclas no se muestra, al igual que en las autenticaciones en sistemas unix, unix like. Le limité el rango de teclas presionadas al abecedario, los numeros, y el backspace.

Aquí pueden verlo en acción: http://4dos.net84.net/ (necesitan tener instalado java en su computador), al ingresar la palabra "carlos", se autentifica y se procede a ejecutar el juego del tic tac toe (otro script para 4dos, que no hice yo porque está muy bueno xD). Recomiendo presionar "Type key", para entrar en el foco de la pantalla.

Login.btm

Código:
@UNALIAS *
@ECHO OFF
@CLS

:INI
GOSUB LOGIN PASSWORD
IF NOT "carlos"=="%PASSWORD" (
ECHO AUTHENTIFICATION FAILED
GOTO INI
)
ECHO.
TICTACTO.BTM
GOTO :EOF

:LOGIN [VARIABLENAME]
::Login function for 4DOS 7.50
::version:0.1
::author:Carlos.
ECHO.
ECHOS ENTER PASSWORD:
IF DEFINED CHAR UNSET CHAR
IF DEFINED %VARIABLENAME UNSET %VARIABLENAME

DO WHILE NOT DEFINED CHAR
INKEY /P /X /K"0123456789abcdefghijklmnopqrstuvwxyz[Bksp][Enter]" %%CHAR

IFF "%@ASCII[%CHAR]" EQ "8" THEN
    SET %VARIABLENAME=%@INSTR[0,%@EVAL[%@LEN[%[%VARIABLENAME]]-1],%[%VARIABLENAME]]
ELSEIFF ("%CHAR" GE "A" .AND. "%CHAR" LE "Z") .OR. ("%CHAR" GE "0" .AND. "%CHAR" LE "9") THEN
    SET %VARIABLENAME=%@INSERT[%@LEN[%[%VARIABLENAME]],%CHAR,%[%VARIABLENAME]]
ELSE
    LEAVE
ENDIFF
UNSET CHAR
ENDDO
IF NOT DEFINED %VARIABLENAME GOTO LOGIN
RETURN