PDA

Ver la versión completa : Programa batch



botnet
13-12-2010, 18:16
Buenas
soy nuevo en esto de la informatica y estoy creando un pequeño programa que por ahora solo tiene la opcion de apagar el ordenador con distintos tiempos y crear archivos llamados virus durante el tiempo que este abierta la ventana (que ese lo quitare por que no bale para nada XD)

el codigo:

@echo off
title Multifuncion
color 30
echo ==================================
echo = =
echo = Bienvenido =
echo = =
echo ==================================
echo.
echo.
echo Pulse una tecla para entrar en el menu.
pause>nul


:Menu
cls
echo Seleccione su opcion tecleando el numero respectivo.
echo.
echo 1. Apagar equipo
echo 2. ?
echo 3. Salir
set /p var=
if %var%==1 goto :Primero
if %var%==2 goto :Segundo
if %var%==3 goto exit
if %var% GTR 3 echo Error
goto :Menu
:Primero
cls
color 30
set Nombre= Apagar equipo
echo %Nombre%
Echo Seleccione el tiempo de apagado
echo 1. 5 sec
echo 2. 60 sec
echo 3. 500 sec
set /p var=
if %var%==1 goto shutdown -s -t 5
if %var%==2 goto shutdown -s -t 60
if %var%==3 goto shutdown -s -t 500
Pause
goto :Menu
:Segundo
cls
color 30
:bucle
Echo nada >virus%random%.exe
goto bucle
goto :Menu

Me gustaria que me dierais alguna idea para el programa o directamente otro codigo; ya que mi intencion era crear un virus que se autoenvie que no sean gusanos.

Gracias!

hystd
13-12-2010, 21:10
Te aconsejo que sigas investigando sobre la programación en este lenguaje de script, antes de meterte en virus y otras historias.

Si quieres hacer algo mejor, aprende a manejar la redirección de la salida estandar, el uso de tuberías. Investiga sobre el funcionamiento del sistema operativo, variables de entorno, comandos, etc... y luego piensa en ideas macabras...

Ánimo y sigue trabajando, pero lo ideal es que apliques tus conocimientos para cosas constructivas y no destructivas. Por ejemplo, puedes reutilizar tu código para que el usuario haga uso de él y así programar su PC para que se apague a cierta hora, sin estar él fisicamente.

Un saludo.

botnet
14-12-2010, 17:26
Gracias!
Seguire tu consejo

gondar_f
16-12-2010, 08:48
El code está muy bien, es sencillo pero muy bien hecho. Porque no sigues metiendo otras opciones, como lanzar por ejemplo herramientas administrativas y cosas así. Al final ese tipo de escripts tienen mucha utlidad, por lo menos para algunos.

salu2

RaidMan
16-12-2010, 09:06
Para el menu tal vez te interesaria estudiar el "CHOICE" (advierto que al no ser un comando propio de MS-DOS no viene instalado por defecto en los ordenadores y habria que copiarlo a SYSTEM32)



echo 1. Apagar equipo
echo 2. ?
echo 3. Salir
CHOICE /C: 123 /N Escoja a continuacion la tarea que desea iniciar:
if ERRORLEVEL 3 goto Primero
if ERRORLEVEL 2 goto Segundo
if ERRORLEVEL 1 goto exit

[...]

:exit <-- No habias definido esta etiqueta!
msg * Programa creado por Botnet.
exit

Lo bueno del CHOICE es que si el usuario trata de introducir una opcion que no has programado, el PC emite un pitido y no lo tiene en cuenta.



Un saludo

botnet
16-12-2010, 19:51
Gracias!
ya le metí mas codecs pero lo que pasa es que uno de ellos es crear un archivo que se agregue al registro pero no consigo el código de abrirlo y no se por que ahora no sale el codigo:
echo En este apartado podra hacer que el ordenador se apague a cierta hora todos los dias
echo 1. 10:00 am
echo 2. 11:00 am
echo 3. 12:00
echo 3. 13:00 pm
echo 4. 14:00 pm
echo 5. 15:00 pm
echo 6. 16:00 pm
echo 7. 17:00 pm
echo 8. 18:00 pm
echo 9. 19:00 pm
echo 10. 20:00 pm
echo 11. 21:00 pm
echo 12. 22:00 pm
echo 13. 23:00 pm
echo 14. 24:00
echo 15. 01:00 am
echo 16. 02:00 am
set /p var=
if %var%==1 echo reg add HKEY_LOCALMACHINE\Software\Microsoft\Windows\Curre ntVersion\Run > 1.bat
echo at 10:00 shutdown -s -t 300 -c "En 5 minutos se apagara el equipo.Para cancelar balla a Inicio>Ejecutar>shutdown -a " >> 1.bat
pause
goto :Menu
if %var%==2 echo @echo hola> 2.bat
echo aqui ba el 2 >> 2.bat
echo y aqui el 3 >> 2.bat
puse
goto :menu
if %var%==3 echo Hola
echo aqui ba el 2
echo y aqui el 3
pause
if %var%==4 echo Hola > 4.txt
echo aqui ba el 2 >> 4.txt
echo y aqui el 3 >> 4.txt

if %var%==5 echo Hola > 5.txt
echo aqui ba el 2 >> 5.txt
echo y aqui el 3 >> 5.txt

if %var%==6 echo Hola > 6.txt
echo aqui ba el 2 >> 6.txt
echo y aqui el 3 >> 6.txt

if %var%==7 echo Hola > 7.txt
echo aqui ba el 2 >> 7.txt
echo y aqui el 3 >> 7.txt

if %var%==8 echo Hola > 8.txt
echo aqui ba el 2 >> 8.txt
echo y aqui el 3 >> 8.txt

if %var%==9 echo Hola > 9.txt
echo aqui ba el 2 >> 9.txt
echo y aqui el 3 >> 9.txt

if %var%==10 echo Hola > 10.txt
echo aqui ba el 2 >> 10.txt
echo y aqui el 3 >> 10.txt

if %var%==11 echo Hola > 11.txt
echo aqui ba el 2 >> 11.txt
echo y aqui el 3 >> 11.txt

if %var%==12 echo Hola > 12.txt
echo aqui ba el 2 >> 12.txt
echo y aqui el 3 >> 12.txt

if %var%==13 echo Hola > 13.txt
echo aqui ba el 2 >> 13.txt
echo y aqui el 3 >> 13.txt

if %var%==14 echo Hola > 14.txt
echo aqui ba el 2 >> 14.txt
echo y aqui el 3 >> 14.txt

if %var%==15 echo Hola > 15.txt
echo aqui ba el 2 >> 15.txt
echo y aqui el 3 >> 15.txt

if %var%==16 echo Hola > 16.txt
echo aqui ba el 2 >> 16.txt
echo y aqui el 3 >> 16.txt

el txt se lo puse para probarlo.
ese codigo es el que no me funciona necesito un codigo para abrirlo y otro para que no se escriban todos los codigos, aunque con el pause se medio solucono

RaidMan
17-12-2010, 15:25
Gracias!
ya le metí mas codecs pero lo que pasa es que uno de ellos es crear un archivo que se agregue al registro pero no consigo el código de abrirlo y no se por que ahora no sale el codigo:

[B]if %var%==1 echo reg add HKEY_LOCALMACHINE\Software\Microsoft\Windows\Curre ntVersion\Run > 1.bat


El codigo para añadir lineas al registro es:

REG ADD HKLM\Software\Microsoft\Windows\CurrentVersion\Run /d NOMBRECLAVE /v VALORCLAVE

En este caso la clave que se creara es, por defecto, de tipo REG_SZ.
Donde NOMBRECLAVE seria el nombre con el que se vera tu clave en el registro, y VALORCLAVE es (en este caso) la ruta del archivo a abrir. Tambien puedes añadir el modificador /F para hacer que fuerce la escritura de la clave en el registro (sobreescribiendo otras que ya existan con el mismo nombre en la ubicacion).


necesito un codigo para abrirlo y otro para que no se escriban todos los codigos

Para abrirlo tendras que llamar al archivo. Sencillamente escribe el nombre del archivo creado (en este caso "1.bat" sin comillas) y este se ejecutara.

O haciendo
CALL ARCHIVO

Para que no aparezca en pantalla los "ecos" utiliza
@ECHO OFF


Yo que tu le echaba un ojo a la ayuda del MS-DOS ;)(escribe help y te saldra una lista de los comandos mas comunes)



Un saludo