|16 Nov 2013||#1|
| || |
Solution: Adding subfolder/subdirectories for Wallpapers/Backgrounds
I've seen a number of people online who have desired the ability to have Windows 7 parse their personal wallpapers folders. While there have been a number of workarounds (e.g. adding each subfolder to the MergeFolders registry key, etc/), they are time consuming and require updating every time you add or change subfolders in the future, or lead to other potential breaks in the natural design of the system.
My solution involves creating a junction link to your parent wallpapers folder (on the same or different drive/partition) into the folder used by "Windows Desktop Backgrounds", which by design (for some reason) is the only folder that is properly parsed by the Desktop Background interface.
This will allow you to either just have one wallpaper folder with subfolders that you use, or specify multiple separate paths to folders containing subfolders. Once you no longer want to include a folder and its subfolders, you must remove the folder from an administrative command prompt located in the %systemroot%\Web\Wallpaper\ folder (default = C:\Windows\Web\Wallpaper\) using the rmdir command. (e.g. rmdir MyLinkedFolder) -- DO NOT simply try to delete the junction link as it will attempt to delete your files, not the link.
If you want to browse the folders you've linked, you can browse them in explorer in the %systemroot%\Web\Wallpaper\ folder (default = C:\Windows\Web\Wallpaper\). If you want to review the paths they point to, you can view the path by doing a directory listing from the command prompt. (This ability has been added to version 1.5 of the batch file attached)
Also, if you don't want to have the Windows wallpapers show up in the selection of images, you could move those folders out of there, or you could simply not select them as part of your slideshow.
This simple DOS batch script must be run as administrator (attached file: AddWallpaperFoldersToDefault (Windows7).bat). It should work for most Windows distros; however, it your default wallpaper path is different you may have to edit the path defined in %linkpath%.
NOTE: The attached batch file has been updated with the feature to assist in removing links.
The code retained here is for demonstration of the basic technique of adding a link.
@echo off SET sysWallPath=%systemroot%\Web\Wallpaper\ ECHO This script must be run as administrator ECHO. ECHO Determine a unique folder name for your wallpapers ECHO (must not be a folder name already in %linkpath%) :Start SET /P linkname=Enter a unique name for your wallpapers: IF "%linkname%"=="" GOTO Error ECHO. ECHO Type, or copy and paste, the path to your wallpaper at the prompt: SET /P target=Please enter the path to include: IF "%target%"=="" GOTO Error SET linkpath=%sysWallPath%%linkname% ECHO. mklink /J "%linkpath%" "%target%" GOTO End :Error ECHO . Echo Invalid path, try again ECHO. GOTO Start :End pause
I also like to create a Library entry to keep track of my Wallpapers, but that's just a personal thing. It's easy to create a Wallpapers Library and add the paths, but it's a bit more involved to script and is outside the necessities of this solution.
In addition to this script, I've also included a registry file that will add all to your "Windows Desktop Backgrounds" (about 24 extra) of the other Windows Globalization wallpapers "hidden" in your installation of Windows using the MergedFolders registry technique. It may only be relevant to AU/CA/GB/US/ZA Ultimate distros, though I'm not sure. I'm sure it could be modified for other distros by adjusting the paths in the file.
|My System Specs|
|Similar help and support threads for2: Solution: Adding subfolder/subdirectories for Wallpapers/Backgrounds|
|Enable alt-v/X for all subdirectories containing pictures at once?||Performance & Maintenance|
|Now I can't access some subdirectories||Virtualization|
|Include sub-folders when adding desktop backgrounds||Customization|
|Our Sites ||Site Links ||About Us ||Find Us |
© Designer Media Ltd
All times are GMT -5. The time now is 03:41 PM.