====== Change windows desktop background for day and night, using batchfile ====== Having a bright, blue wallpaper for day use and a darker, reddish wallpaper for evening/night is useful stay in synch with the real time of day. So, i wanted my windows xp machine automatically switch to the day wallpaper from 7-20 and to night from 20-7 hours. The following batch script does this, without any add-on software. To use, copy-paste the file and store it to your scripts directory (e:\etc in my case). {{:blog:wallpaper_day.jpg?320|}} {{:blog:wallpaper_night.jpg?320|}} Advantages: * No additional software (apart from the script) has to be installed * No additional load on the computer by a desktop switcher, except from the tasks that you define yourself Notes: * You must convert your jpg wallpaper to bmp (changing the dimensions to exactly match your screen). You can't directly use a jpg file as a windows wallpaper (the settings dialog creates a bmp file behind your back!). * Configuration is by changing the set ... variable at the top of the file * Test by calling the batchfile * To automate the wallpaper switch: * make a link in the windows autostart folder * add an hourly task to the task manager (or even cleaner, two tasks at the switch times (7:00 and 20:00) REM :: chwpdn. batchange to CHange the WallPaper for Day and Night REM :: v1.0 B.Brunner, 23.12.2010 (brb_trash at epr dot ch) REM Prepare two bmp files to be used during day and night REM - jpgs dont work directly, convert to bmp of your screen resolution first! REM - change start and end day hour to your needs REM - store this batchfile in a place like e:\etc REM - make a link to this batchfile in your autostart folder (set minimized in the link) REM - using the task manager have the batchfile start every hour, to switch during the day REM REM Configuration changes go here set wpnight=e:\etc\wallpaper_night.bmp set wpday=e:\etc\wallpaper_day.bmp set daystarthour=7 set dayendhour=20 REM Set hours variable for /f "tokens=1-3 delims=:." %%a in ( "%time%") do set hours=%%a REM Use day wallpaper, except from 00:00-08:00 and 20:00-23:59 set wallpaper=%wpday% if %hours% LSS %daystarthour% goto setnight if %hours% GTR %dayendhour% goto setnight goto setit :setnight set wallpaper=%wpnight% :setit Echo Setting wallpaper to %wallpaper% REG ADD "HKCU\Control Panel\Desktop" /v Wallpaper /t REG_SZ /d %wallpaper% /f RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters {{tag>}} ~~LINKBACK~~ ~~DISCUSSION~~