# BBC BASIC Programmers' Reference

### Sidebar

setting_20the_20desktop_20wallpaper

This is an old revision of the document!

A PCRE internal error occured. This might be caused by a faulty plugin

=====Setting the Desktop wallpaper===== //by Jon Ripley, July 2007//\\ \\ ==== Setting the Desktop wallpaper ==== \\ To set the current Desktop wallpaper use the following code:\\ \\ SPIF_UPDATEINIFILE = 1 SPI_SETDESKWALLPAPER = 20 SYS "SystemParametersInfo", SPI_SETDESKWALLPAPER, 0, filename\$, SPIF_UPDATEINIFILE \\ Here the **filename\$** parameter is the full path to a bitmap image (.BMP) to set as the Desktop wallpaper. To use images in unsupported file formats - such as .GIF and .PNG - as Desktop wallpaper they must first be converted to Window bitmap (.BMP) format. Under Windows Vista **filename\$** can point to a JPEG image (.JPG or .JPEG). \\ \\ ==== Removing the Desktop wallpaper ==== \\ To remove the current Desktop wallpaper use code similar to the following:\\ \\ SPIF_UPDATEINIFILE = 1 SPI_SETDESKWALLPAPER = 20 SYS "SystemParametersInfo", SPI_SETDESKWALLPAPER, 0, "", SPIF_UPDATEINIFILE \\ Here the only difference is that the file name parameter is empty.\\ \\ ==== Retrieving the current Desktop wallpaper ==== \\ To retrieve the full path to the current Desktop wallpaper use code similar to the following:\\ \\ MAX_PATH = 260 DIM wp% MAX_PATH - 1 SPI_GETDESKWALLPAPER = 115 SYS "SystemParametersInfo", SPI_GETDESKWALLPAPER, MAX_PATH, wp%, 0 BackDrop\$ = \$\$wp% \\ Here **BackDrop\$** will contain the full path to the current Desktop wallpaper or NUL if no wallpaper is in use. As always, make sure you execute the **DIM** statement only once, or use **DIM LOCAL**, to avoid a memory leak and an eventual **No room** error.