A copy of the current wallpaper can be found by entering one of the below paths in Windows File Explorer address bar.
Path 1 -
%AppData%\Microsoft\Windows\Themes\CachedFiles
Path 2 -
%AppData%\Microsoft\Windows\Themes\TranscodedWallpaper
Note: The file TranscodedWallpaper
in Path 2 does not have a file extension. Use "Open With" or "How do you want to open this file?" dialogue box and select any image viewer, such as, "Windows Photo Viewer" or the "Photos" app.
Note for Windows 10: The above locations have limitations. For example, if the wallpaper you’re looking for is no longer visible in the ‘Background’ tab in the Settings app, you can’t recover it. It will work for your last five wallpapers but nothing older. 1
Path 3 [default Windows wallpapers] -
%SystemRoot%\Web
Check in one of the below folders -
- "4K" for 4K wallpapers,
- "Screen" for lock screen backgrounds,
- "touchkeyboard" for colorful abstract backdrops in Windows 11 2
- "Wallpapers" for default Windows wallpapers
Path 4 [wallpapers from installed themes (Aero, etc.)] -
%SystemRoot%\Resources\Themes
Path 5 [wallpapers from per-user installed themes (including pre-installed from OEM)] -
%LocalAppData%\Microsoft\Windows\Themes
Path 6 [if Windows Photo Viewer was used to set desktop wallpaper] -
%AppData%\Microsoft\Windows Photo Viewer\
Path 7 -
If Windows 11 Slideshow was used to set desktop background

The location of the image is stored in the windows registry in folder HKEY_CURRENT_USER\Control Panel\Desktop
under the key TranscodedImageCache
but is unfortunately encoded in binary.
To decode the registry key and view the image in Windows Explorer, you may follow the instructions listed on ElevenForum.com or use Notepad to save the vbs code mentioned below in a .vbs
file and run it.
The contents of VBS file used for decoding for reference 4
Const HKCU = &H80000001 'HKEY_CURRENT_USER
sComputer = "."
Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" _
& sComputer & "\root\default:StdRegProv")
sKeyPath = "Control Panel\Desktop\"
sValueName = "TranscodedImageCache"
oReg.GetBinaryValue HKCU, sKeyPath, sValueName, sValue
sContents = ""
For i = 24 To UBound(sValue)
vByte = sValue(i)
If vByte <> 0 And vByte <> "" Then
sContents = sContents & Chr(vByte)
End If
Next
CreateObject("Wscript.Shell").Run "explorer.exe /select,""" & sContents & """"
Note: The vbs code didn't work for me when I first set up the slideshow, but it worked after changing to the next image in the slideshow
If you are looking for the location of Lock Screen images, visit this SuperUser question.
Note on 3rd party apps -
When 3rd party apps like John's Background Switcher are used to manage desktop backgrounds (which I used on my older Win10 PC), they typically provide an option to view the current/previous desktop background (if set by the app itself). Check the app's help file to know more.
Bonus: To activate Windows Photo Viewer in Windows 10 visit this article on HowToGeek