Altere o papel de parede de acordo com o tempo

1

Eu preciso abri-lo na inicialização para mudar o papel de parede no dia n noite

Dim objShell
str1 = "C:\Users\AnB\Desktop\Texts\Projects\Project WallTime\Day.bat"
str2 = "C:\Users\AnB\Desktop\Texts\Projects\Project WallTime\Night.bat"
Set objShell = Wscript.CreateObject("WScript.Shell")
if hour(time) < 17 then
objShell.Run str1
if hour(time) > 16 then
objShell.Run str2
end if 
end if

Este é o vbs que irá abrir arquivos em lote que irão mudar o Reg

Arquivo em lote para o dia

@echo off
reg add "HKEY_CURRENT_USER\Control Panel\Desktop" /v Wallpaper /t REG_SZ /d "C:\Users\AnB\Desktop\Texts\Projects\Project WallTime\Day and Night\Day.png" /f
RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters

Arquivo em lote para a noite

    @echo off
reg add "HKEY_CURRENT_USER\Control Panel\Desktop" /v Wallpaper /t REG_SZ /d "C:\Users\AnB\Desktop\Texts\Projects\Project WallTime\Day and Night\Night.png" /f
RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters

mas quando eu uso o vbs ele não alterou o registro

Por favor, ajude

Obrigado

    
por Anuja Nimesh 08.02.2018 / 15:43

1 resposta

1

Fiz, obrigado pela ajuda

@Echo Off

Set "locn=%UserProfile%\Desktop\Texts\Projects\Project WallTime\Day and Night"
Set "rstr=Reg Add "HKCU\Control Panel\Desktop" /V Wallpaper /D "
Set "str1=%locn%\Day.png"
Set "str2=%locn%\Night.png"
Set /A "now=10%TIME:~,2%" 2>Nul

If %now:~-2% Lss 17 (%rstr% "%str1%" /F >Nul
) Else %rstr% "%str2%" /F >Nul
RunDll32 User32.dll,UpdatePerUserSystemParameters >Nul
    
por 10.02.2018 / 16:21