HEy.
i want to forcefully change my wallpapers...
Basicly i don't want any of the regular stuff, i want a low level solution .
Anyone got any ideas on how to do that?
thx
Posted on 2004-09-09 18:45:42 by ReVeR
Two possible solutions:

1) Edit the corresponding registry key and wait for the next reboot.
2) The desktop is just a big listview, send a message! Search the board, there's a fine example on tweaking the desktop's listview control.

You can't get more low level than that, right? :)
Posted on 2004-09-10 18:29:16 by QvasiModo
You can change your desktop wallpaper like this:


.DATA

szFileName BYTE "filename.bmp", 0 ; must be a bitmap
lResult SDWORD 0

.CODE

invoke SystemParametersInfo, SPI_SETDESKWALLPAPER, NULL, OFFSET szFileName, SPIF_UPDATEINIFILE or SPIF_SENDWININICHANGE or SPIF_SENDCHANGE
mov lResult, eax
Posted on 2004-09-10 21:18:20 by Greg
hey, QuasiModo, i triwd to search the forums, but came up with 22 + pages of list view desktop wallpaper hits....was there someting specific that i could uise to narow this down, cuz i was unable to find it like this...
Posted on 2004-09-11 01:19:36 by ReVeR
btw:., i got some info on how the desktop is like a listbox, how the items are nly items in a list box, but i don't get it how the wallpaper is set..
also the above, for setting teh wallpaper...waht exectly tdoes that funciton do?
edit the registry?
Posted on 2004-09-11 12:16:37 by ReVeR
List view, not box, don't mix them up or your code will never work... ;)

Actually, if you're just looking for a way to change the wallpaper, use SystemParametersInfo as Greg suggested, it's the right choice. It edits the registry and refreshes your desktop, plus it will always work in all Windows versions (unlike low level hacks). Only try the other ways if you feel like playing with Windows internals for a while. :)
Posted on 2004-09-13 15:45:13 by QvasiModo