Autor
|
Tema: Apagar la computadora tras inactividad, pero ignorar la inactividad al ver video (Leído 20,877 veces)
|
WaAYa HaCK
Desconectado
Mensajes: 292
Arduino, Android and music
|
Exacto, es tan simple como agregar una tarea programada que ejecute un .bat: tarea.batWscript.exe "C:\comprobar.vbs" comprobar.vbsset objshell = createobject("wscript.shell") objshell.run "C:\apagar.bat", vbhide
apagar.bat REM By PiToLoKo REM Foro.ElHacker.Net :Bucle ping localhost -n 900 >nul If !Reproductores! EQU 0 ( echo Reinicio en proceso... shutdown -s -t 30 echo Reinicio cancelado, El reproductor de video se esta ejecutando. cls ) tasklist /fi "IMAGENAME eq %reproductor%" | findstr ".exe" >nul )
Sólo hacen falta esos 3 elementos: tarea.bat ejecuta un VBS. comprobar.vbs ejecuta el apagar.bat, oculto. apagar.bat se queda ejecutándose oculto todo el rato, comprobando si hay algún reproductor activo. Si no, apaga. Ahora, lo que puedes hacer es hacer que se ejecute automáticamente "tarea.bat": Agregándolo al Registro: reg ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Run /v tarea /d "C:\tarea.bat" Con schtasks: schtasks /create /SC ONLOGON /TN "Tarea" /TR "C:\tarea.bat" Esto es el resumen de todo lo que ha dicho pitoloko . Con los 3 elementos y agregando el primero de ellos al Registro o a Tareas Programadas, no deberías tener ningún problema. Por cierto, cómo haces para detectar si el PC está inactivo? PD: pitoloko, sé que ERRORLEVEL es una variable, pero a mí me dio error cuando puse: y tuve que poner: Ahora, no sé por qué no me funcionó. Saludos!
|
|
|
En línea
|
La cacatúa yoyó es nueva en el zoo!
|
|
|
SuperDraco
Desconectado
Mensajes: 2.505
Crew Dragon
|
PD: pitoloko, sé que ERRORLEVEL es una variable, pero a mí me dio error cuando puse: y tuve que poner: Ahora, no sé por qué no me funcionó. Ahhh vaya vaya, ta bien, pero " errorlevel 1" te funcionaba? porque a mi no Yo siempre uso: LES : less LEQ : less or equal EQU : equal GEQ :greater or equal GTR : greater Así evito esos posibles errores, total, es lo mismo.
|
|
« Última modificación: 3 Julio 2011, 16:03 pm por pitoloko »
|
En línea
|
No he vuelto, solo estoy de paso.
|
|
|
WaAYa HaCK
Desconectado
Mensajes: 292
Arduino, Android and music
|
Ya te dije que mi XP es el mejor Pijos del W7... bah! LES : less LEQ : less or equal EQU : equal GEQ :greater or equal GTR : greater Así evito esos posibles errores, total, es lo mismo. Sí, funciona mejor, normalmente. Yo los uso para mis juegos en batch, cuando me aburro en clase Saludos!
|
|
|
En línea
|
La cacatúa yoyó es nueva en el zoo!
|
|
|
Aikanáro Anário
|
Gracias por todo lo que han hecho, pero creo que han hecho de más El script por sí solo no puede darse cuenta cuando la computadora está inactiva, así que si lo ejecuto, siempre que no esté corriendo alguno de esos procesos, se apagará. Entonces no conviene que el sript tenga un bucle, ya que de eso se encarga el programador de tareas, de que cada 15 minutos, verificar si la computadora está inactiva, si lo está entonces ejecutará el script; pero si el script es un bucle se quedará ejecutandose y apagará la computadora cuando esté haciendo cualquiera otra cosa excepto viendo un video. La primera versión del script de WaAYa HaCK es la que me conviene tasklist /fi "IMAGENAME eq wmplayer.exe" | find /i "wmplayer.exe" :kmplayer tasklist /fi "IMAGENAME eq KMPlayer.exe" | find /i "KMPlayer.exe" :mplayerc tasklist /fi "IMAGENAME eq mplayerc.exe" | find /i "mplayerc.exe" if ERRORLEVEL 1 shutdown -s -t 30 -c "No estas viendo ningun video"
Solo le agregué el Media Player Classic, creo que está bien xD Una pregunta ¿Qué hace la última línea?
|
|
« Última modificación: 3 Julio 2011, 17:54 pm por Aikanáro Anário »
|
En línea
|
|
|
|
WaAYa HaCK
Desconectado
Mensajes: 292
Arduino, Android and music
|
Exacto! Entonces, no hace falta que haga un bucle. Modifico el script de pitoloko: REM By PiToLoKo REM Foro.ElHacker.Net If !Reproductores! EQU 0 ( echo Reinicio en proceso... shutdown -s -t 30 echo Reinicio cancelado, El reproductor de video se esta ejecutando. cls ) tasklist /fi "IMAGENAME eq %reproductor%" | findstr ".exe" >nul )
Sólo hace falta que tu tarea programada ejecute esto. Saludos!
|
|
« Última modificación: 3 Julio 2011, 18:13 pm por WaAYa HaCK »
|
En línea
|
La cacatúa yoyó es nueva en el zoo!
|
|
|
Aikanáro Anário
|
Yo no sé mucho de batch, pero creo que tiene un error dices goto :bucle, pero no existe :bucle, o sea no tiene donde ir....
¿Y cual es la diferencia entre la versión de pitoloko y la tuya?
|
|
|
En línea
|
|
|
|
WaAYa HaCK
Desconectado
Mensajes: 292
Arduino, Android and music
|
Jajaja OMG FAIL! xDD . Modifiqué el script de pitoloko borrando los bucles y voy y me dejo el goto. Ya está arreglado. Una pregunta ¿Qué hace la última línea?
La línea ping localhost -n 5>nul es usada como temporizador, aunque no sirve para esto. Ping (Packet InterNetwork Groper) es la utilidad de Windows que debes conocer, envía paquetes a un host para comprobar si está activo, aunque puede tener otras funciones. localhost somos nosotros, el host al que hacemos ping. -n 5 es el número de peticiones de ping al host. Cada petición es 1 segundo, así que esta línea tarda 5 segundos. Por último, >nul es una redirección. Con ella, se podría resumir que: la línea ping localhost -n 5>nul envía 5 peticiones a nosotros mismos durante 5 segundos, y no lo muestra en ninguna parte. Por eso, suele ser usada como temporizador. ping localhost -n 200 >nul en un batch tardaría 200 segundos en proceder, ya que está ocupado haciendo otra cosa, pero tú no ves nada. Es como una pausa. Saludos!
|
|
|
En línea
|
La cacatúa yoyó es nueva en el zoo!
|
|
|
|
Edu
Desconectado
Mensajes: 1.082
Ex XXX-ZERO-XXX
|
Como haces para saber cuando esta inactiva la pc?
|
|
|
En línea
|
|
|
|
SuperDraco
Desconectado
Mensajes: 2.505
Crew Dragon
|
un bucle se quedará ejecutandose y apagará la computadora cuando esté haciendo cualquiera otra cosa excepto viendo un video.
Yo pensé que era eso lo que querias ¿Y cual es la diferencia entre la versión de pitoloko y la tuya?
Que la mia era un bucle que se ejecuta cada 15 min, y la modificación de waAya solo ejecuta una vez la comprobación (Su versión esta pensada para que cada 15 min tu corras el batch desde la tarea) ping localhost -n 5 >nul
Una pregunta ¿Qué hace la línea?
Como diría Leo, Son las solicitudes de echo. Como haces para saber cuando esta inactiva la pc?
tal vez use esta api :/ GetIdleMinutes API function
|
|
« Última modificación: 3 Julio 2011, 19:33 pm por pitoloko »
|
En línea
|
No he vuelto, solo estoy de paso.
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Tiempo de inactividad
Programación Visual Basic
|
SheKeL_C$
|
1
|
1,494
|
16 Junio 2006, 07:11 am
por Grimble Grumble
|
|
|
Tiempo de inactividad
Programación Visual Basic
|
SheKeL_C$
|
9
|
3,862
|
21 Noviembre 2006, 15:19 pm
por Kurtt
|
|
|
Touch ID pedirá una segunda contraseña tras dos días de inactividad o reinicio
Noticias
|
wolfbcn
|
0
|
1,042
|
12 Septiembre 2013, 17:54 pm
por wolfbcn
|
|
|
[Resuelto] Cerrar sesion por inactividad
Desarrollo Web
|
peib0l
|
2
|
13,222
|
4 Mayo 2015, 19:48 pm
por peib0l
|
|
|
código para evitar que el computador se bloquee por inactividad
Programación General
|
binario010101
|
7
|
7,129
|
7 Noviembre 2015, 18:58 pm
por binario010101
|
|