Cambiar el fondo del escritorio según la hora del día mediante script Windows 8.1

Cambiar el fondo del escritorio según la hora del día mediante script Windows 8.1

Hola, es la primera vez que uso este sitio web, así que espero no hacer la pregunta en el formato incorrecto.

De todos modos, como dice el título, tengo un problema similar.a un hilo que fue respondido hace un tiempoeso tenía la respuesta pero no funcionó para mi computadora que ejecuta Windows 8.1 cuando intenté ejecutarlo para probarlo. Estoy seguro de que seguí las instrucciones cambiando la ruta donde se encuentra la imagen y me preguntaba qué tendría que cambiar para que funcione o si el código está perfectamente bien y probablemente me haya equivocado en alguna parte.

dim shell
Set shell = WScript.CreateObject("WScript.Shell")
wallpaper = "C:\path\to\wallpaper.jpg"
shell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", wallpaper
shell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True

También he probado elcódigo originalpero termino recibiendo un error que dice que el sistema no puede encontrar el archivo especificado en la última línea de código.

¡Cualquier ayuda será apreciada!

Respuesta1

Esta es una mala respuesta y no debe usarse:

Este script emula el clic derecho en la imagen y presiona "Establecer como fondo de escritorio". El uso del script debe ser claro SetWallPaper "directory to picture", "filename of picture", "name context menu to run".

'File encoding should be in ANSI
SetWallPaper "C:\icons\", "Potato-icon.png", "Set as desktop &background"

Sub SetWallPaper(WallPaperFolder, WallpaperFile,VerbName)
dim objShell, objFolder, objFolderItem, objVerb, colVerbs
Set objShell = CreateObject("Shell.Application")
set objFolder=objShell.NameSpace(WallPaperFolder)
set objFolderItem=objFolder.ParseName(WallPaperFile)
set colVerbs=objFolderItem.Verbs
for each objVerb in colVerbs
    'msgbox objVerb ,0, "Press CTRL+C for copy text" 'uncomment for debug names in contextmenu
    if objVerb=VerbName then
        'x=msgbox(objVerb ,0, "omg found")
        objVerb.DoIt
        'Without the sleep command the change never takes effect on Win7.
        wscript.sleep(2000)
        wscript.quit
    end if
next
End Sub

Si su Windows tiene un nombre diferente para "establecer como fondo de escritorio" cuando hace clic derecho en la imagen:

  • Debes descomentar la línea (eliminar comillas simples) despuéspara cada objVerb en colVerbs
  • Luego ejecute el script y busque (ENTER para el siguiente mensaje) la cadena igual "Establecer como escritorio y fondo" para su idioma y luego presione CTRL+C para guardar el mensaje.
  • Abra el bloc de notas y presione CTRL+V para pegar el mensaje. Copie este nombre al script.

Residencia eneste

Si no comete ningún error, funcionará al menos en Windows 7.

información relacionada