Eu sei que este é um piso antigo, e o Windows 7 é um SO que rapidamente se torna obsoleto. Mas para o utilizador ocasional: Há anos que lido com isto na minha loja. Estou suficientemente perto de TI para ter certos privilégios no meu portátil, mas não o suficiente para deixar de fazer GPOs estúpidos que - claro - também me afectam a mim.
Em XP estou certo, em Windows 7 isto é apenas uma inspiração: Este tipo de alterações ao Registo não terá efeito até reiniciar o sistema! E como se tenta contornar um GPO, isto equivale a “missão impossível” em muitas situações. Há, contudo, uma forma de force uma actualização do Registo a ser aplicada sem reiniciar…
A questão é: Não é preciso reiniciar - é preciso descarregar o caju das definições do registo - que é uma parte de um reinício.
Solução (em XP pelo menos):
@echo off
call :quiet>nul 2>&1
goto :EOF
:quiet
:: Configure Wallpaper (command prompt method works only with bmp files)
REG ADD "HKEY_CURRENT_USER\Control Panel\Desktop" /V Wallpaper /T REG_SZ /F /D "C:\WINDOWS\Web\Wallpaper1.bmp"
REG ADD "HKCU\Control Panel\Desktop" /V WallpaperStyle /T REG_SZ /F /D 0
REG ADD "HKCU\Control Panel\Desktop" /V TileWallpaper /T REG_SZ /F /D 1
:: Make the changes effective immediately (only XP-compatible)
RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters
Isto funciona (funcionou) bem para mim na minha máquina XP, sendo o truque a última linha: Executar “user32.dll,UpdatePerUserSystemParameters” como parte do bat-file. Isto toma o lugar de um “reboot” :-)
Coloquei isto na pasta Iniciar, e adicionei uma combinação de teclas de atalho ao ficheiro de morcegos: Desta forma, o meu PC começou com o meu próprio papel de parede, e quando o GPO refresca algumas vezes durante o dia, carrego na tecla de atalho, e recupero a minha vista preferida (que é infinitamente mais bonita do que o “ecrã preto de depressão” que é o stock da empresa) ;-)
Ainda não consegui fixar isto no meu novo portátil (a correr Win 7), mas acho que alguém lá fora pode inspirar-se neste comportamento (XP) e pesquisar mais.