Ejecutar una aplicación como SYSTEM

Iniciado por ANTRAX, Julio 18, 2011, 10:14:18 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Código: dos
@echo off
:: Ejecutar una aplicación como SYSTEM
:: Puedes ejecutarla inmediatamente o programarla para cuando quieras
:: Tal como está el codigo está programado para ejecutar al intantante la aplicación
:: Borra los comentarios REM para ahorrar codigo y fijate en lo que pone
:: By nhaalclkiemr
set a=0
set z=%TIME:~0,2%
if "%TIME:~0,1%"==" " set z=0%TIME:~1,1%
if "%TIME:~8,1%"=="," goto normal
if "%TIME:~10,1%"=="," goto 2caso
if "%TIME:~12,1%"=="," goto 3caso
:normal
set x=%TIME:~3,2%
goto a
:2caso
set x=%TIME:~4,2%
goto a
:3caso
set x=%TIME:~5,2%
:a
set /A a=%a%+1
if "%x%"=="08" set x=8
if "%x%"=="09" set x=9
if "%a%"=="1" set /A x=%x%+1
REM El segundo 1 especifica el tiempo en minutos que tardará en ejecutarse la aplicación, es modificable
REM Solo se puede sumar como máximo 86400 minutos, de lo contrario pueden producirse errores
:e
if %x% GTR 59 set /A z=%z%+1
if %z% GTR 23 set /A z=%z%-24
for /L %%A in (0,1,9) do if "%z%"=="%%A" set z=0%z%
if %x% GTR 59 set /A x=%x%-60
if %x% GTR 59 goto e
at.exe %z%:%x% AQUITUPROGRAMA.EXE
REM En lugar de lo anterior puedes poner lo siguiente si quieres que la aplicacion sea visible:
REM at.exe %z%:%x% /interactive AQUITUPROGRAMA.EXE
REM %z% y %x% son la hora y los minutos a los que se ejecutará la aplicación, puedes poner otra cosa si quieres
if %a%==11 goto b
if not %errorlevel%==0 goto a
schtasks /run /tn at1
REM Esta ultima linea ejecuta inmediatamente la aplicación, si la estás programando para una hora determinada borra esta linea
exit
:b
set a=0
if %x% LEQ 9 set x=0%x%
:c
set /A a=%a%+1
schtasks /create /tn temp /tr AQUITUPROGRAMA.EXE /sc once /st %z%:%x%:00 /ru System
REM Esto se ejecutará en caso de que el comando AT falle, es un intento alternativo, de esta manera no se puede hacer visible
if %a%==11 goto error
if not %errorlevel%==0 goto c
schtasks /run /tn temp
REM Esta ultima linea ejecuta inmediatamente la aplicación, si la estás programando para una hora determinada borra esta linea
exit
:error
:: Aqui va el BAT que se ejecuta en caso de que se produzca un error