Como pregunta el título (Windows 7). (¿Cómo) puedo cambiar el tiempo hasta que el protector de pantalla se active desde la línea de comandos? ¿Es posible?
Normalmente estoy contento con un ajuste de 5 minutos, pero ocasionalmente quiero alargarlo. Quisiera las dos longitudes vinculadas a las teclas de acceso rápido (sé cómo hacerlo).
Supongo que podría grabar dos macros y usarlas, pero me preguntaba si hay alguna opción de línea de comandos (incluidas las actualizaciones del registro) que pueda usar para decirle a Windows que inicie el protector de pantalla después de X minutos de inactividad.
(tenga en cuenta que no quiero iniciar el protector de pantalla inmediatamente; quiero cambiar el tiempo que Windows esperará antes de iniciarlo)
Gracias por adelantado.
[Respuesta] Finalmente utilicé una variación en la respuesta de @Gjordis, pero todo el crédito es para él.
No entendí por qué necesitábamos 3 operaciones: agregar, eliminar, cambiar el nombre y reducirlo a dos.
Como quiero vincularme a una tecla de acceso rápido, necesito ejecutar dos comandos en uno. Normalmente, uno puede separar los comandos con un punto y coma y emitirlos en una línea (por ejemplo dir c:;dir d:
). Eso dio errores con el reg
comando, por lo que al final tengo dos archivos por lotes. Los contenidos son idénticos, solo cambia la duración.
Algo extraño: el valor está escrito correctamente en el registro, pero el Panel de control / Personalizar / Protector de pantalla no siempre actualiza su GUI. Sin embargo, probé y el protector de pantalla se comportó como se esperaba.
@echo off
reg delete "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveTimeOut /f
reg add "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveTimeOut /t REG_SZ /d 180 /f
Si esto te ayuda, por favor vota la pregunta ;-)
fuente
De hecho, este enfoque (a través del registro) no funciona hasta que se reinicia . La única forma de hacerlo sin reiniciar la PC es usar una API:
https://www.pcreview.co.uk/threads/utility-to-tempomporary-change-the-screensaver.2321339/#post-7442568
pero las API no se pueden usar desde una línea de comandos, es decir, un script VB. Aquí está la razón:
http://forums.codeguru.com/showthread.php?31534-VBScript-and-API&p=86696#post86696
Podría hacerse llamando a la utilidad SetScrTimeout.exe (desde el primer enlace), pero desafortunadamente, esta pequeña utilidad ya no existe en Internet.
fuente