Sleep Coming o Windows Shutdown Timer desde la línea de comando

El valor de este artículo no está en la solución en sí, sino en un recordatorio de cómo resolver rápidamente problemas simples.


Pero si necesita una solución simple, por favor:


Guarde estas líneas en CMD y después de comenzar en 20 minutos (1200 segundos) la computadora entrará en modo de suspensión. En total, el programa tomó 73 bytes :

ping 127.0.0.1 -n 1201 > nul
rundll32 powrprof.dll,SetSuspendState 0,1,0


Pero si solo necesita apagarlo , entonces todo será aún más corto, es decir, 47 bytes . Solo la segunda línea se verá así:

shutdown -s -t 00


Utilizo esto antes de irme a la cama, incluida mi radio en línea favorita "para dormir por venir" también desde la línea de comandos, que se discutirá en el corte.

Quien sigue curioso, por favor, debajo del gato. Enlaces a guiones listos para usar al final del artículo.



En su mayor parte, todo lo nuevo es viejo y olvidado.



Primero, veamos qué hacen estas líneas:


Hacemos ping a una dirección IP que siempre está disponible (a menos que su firewall esté configurado como "elegante"). El intervalo predeterminado es 1000 ms = 1 segundo. El conmutador -n establece el número de repeticiones 20 minutos x 60 segundos = 1200 + 1 (ya que el primer ping se devuelve en menos de 1 ms). Y la construcción > nul le dice al intérprete que la salida estándar se enviará a nul para deshacerse de la salida innecesaria a la pantalla.

ping 127.0.0.1 -n 1201 > nul


Se llama al programa rundll32.exe para ejecutar una rutina DLL. En este caso, SetSuspendState con los parámetros que necesitamos. Descripción detallada en MSDN .

rundll32 powrprof.dll,SetSuspendState 0,1,0


Cabe señalar que si ha habilitado el modo de suspensión híbrido ( Hibernar ), entrará en este modo. Puede deshabilitarlo ejecutando lo siguiente como administrador:

powercfg -hibernate off


Hay algunos usos más debajo del spoiler, por ejemplo ...
Lanzamiento de mi radio de Internet favorita a través de Winamp en una transmisión separada.

start winamp http://cast.loungefm.com.ua:8000/acoustic128


Bloquear la estación de trabajo ( WIN + L ).

rundll32.exe User32.dll,LockWorkStation


Modo de suspensión híbrido ( hibernación ).

rundll32.exe PowrProf.dll,SetSuspendState


Reiniciar.

shutdown.exe -r -t 00


Una vieja broma sobre la activación del modo mouse para zurdos (cambiando los botones izquierdo y derecho del mouse).

rundll32 user32.dll,SwapMouseButton


.

rundll32 shell32.dll,Control_RunDLL main.cpl,@0,1


.

rundll32 user,SetCursorPos


.

rundll32 user,CascadeChildWindows


.

rundll32 user,TileChildWindows


, WinAPI .



Hay una expresión muy conocida que gusta a mucha gente:



La pereza es el motor del progreso.


Un poco de historia:


En 2003, se escribió un programa simple apresuradamente para apagar la PC por temporizador. Lo escribí yo mismo, porque en ese momento no tenía ningún programador familiar ni acceso a Internet. Estoy seguro de que muchos de los mismos "programadores domésticos" que compraron o cortaron discos de MSDN estudiaron la programación de Windows durante toda la noche. Con motivo de escribir el artículo, lo abrí en un archivo antiguo en la PC de mis padres. Parecía simple, pero cumplió con su tarea. Al final resultó que, incluso ahora, varios de mis amigos lo usan.

imagen

No recuerdo en qué estaba escrito (VC, VB, Delphi o Assembler). Su tamaño tampoco era grande, pero todavía no se pueden comparar 16 166 versus 47 bytes .

Y cuando hace un par de días necesitaba la misma funcionalidad, comencé a buscar un software similar. Imagínese mi decepción cuando encontré un montón de programas en promedio desde 1,1 MB hasta monstruos enormes de 15,2 MB de tamaño. Naturalmente, mi conciencia no me permitió lanzar esta herejía ni siquiera en la caja de arena. Al darme cuenta de que necesito un retraso de 20 minutos y la llamada de un solo procedimiento, me acordé de rundll32.exe , me metí en Internet y no me equivoqué. Como resultado, la solución se encontró en 1 minuto.



Moralidad:



A menudo no necesitamos software de terceros para resolver tareas simples. Basta con ir a un buscador y encontrar una solución sencilla al problema, que en un 98,785% ya es de dominio público. Por supuesto, debemos mencionar otra forma, para verdaderos especialistas en TI, enciendan la imaginación, vayan a los manuales de MSDN y utilicen la funcionalidad del sistema operativo lista para usar. De acuerdo, es agradable usar soluciones simples y elegantes, pero es doblemente más agradable cuando toma una decisión con su propia mente.



Como se prometió en los enlaces anteriores:

Scripts para temporizadores de apagado, encienda la radio y cambie al modo de suspensión - radio_sleep_scripts.zip

De repente, mi antiguo oficio será interesante - ExitXP.exe




Espero que hayas disfrutado de mi primera publicación. Me encantaría tener comentarios y sugerencias sobre el artículo. Me gustaría ver sus interesantes soluciones a problemas similares en los comentarios. Gracias por tu tiempo y lee hasta el final.



All Articles