2011-10-15 11 views
7

Estoy tratando de crear un archivo por lotes que cambiará mi fondo cuando un programa se cierra en Windows 7. He intentado usar esto, pero no funciona, incluso cuando me desconecto y vuelvo a iniciar sesión:Cambiar el fondo de pantalla con un archivo por lotes, al cerrar el programa. ¿Posible?

@echo off 
reg /add HKCU\Control Panel\Desktop\WallPaper /v wallpaper /t REG_SZ /d c:\images\wallpaper.bmp 
+0

¿También está abriendo el programa que desea supervisar a través del script por lotes? – serk

Respuesta

14

hay algunos errores en su comando:

  1. Usted ha añadido unnecessarry / a add comando.
  2. No encierra el nombre de la clave de registro entre comillas (para el escape de espacio).
  3. Ha especificado una ruta incorrecta (WallPaper adicional al final).

Esto debe hacer el truco:

reg add "HKCU\Control Panel\Desktop" /v Wallpaper /f /t REG_SZ /d c:\images\wallpaper.bmp 

Por supuesto, si la ruta contiene espacios fondo de pantalla debe encerrar entre comillas también.

También agregué la clave /f para forzar la sobrescritura si el fondo de pantalla ya está configurado.

+1

En realidad, no actualiza la pantalla, ¿alguna forma de forzar eso? –

+0

@ Mr.TA agregue esta línea 'reg add" HKCU \ Control Panel \ Desktop "/ v WallpaperStyle/f/t REG_SZ/d 10' y ejecute el archivo bat como administrador; eso funcionó para mí. – RozzA

+0

@ Mr.TA intente agregar esta línea a su secuencia de comandos después del registro agregar: 'RUNDLL32.EXE USER32.DLL, UpdatePerUserSystemParameters, 1, True' – JPelletier

Cuestiones relacionadas