1.

Solve : Win10 shows my old wallpapers yet they are not on my HDD - where are they??

Answer»

I want to keep my old wallpapers that windows 10 has stored somewhere, but I'd like to add a few more wallpapers to the folder.
The folder is not on my Computer though, so where does windows store the user wallpapers folder?
Online somewhere?
ThanksHi 
Take a tour here find-current-wallpaper-file-path-windows-10

And here too Finding wallpaper locations in Windows 7 and later Quote from: Hackoo on July 02, 2020, 02:47:44 AM

Hi 
Take a tour here find-current-wallpaper-file-path-windows-10
Thanks, yes I saw that, but it only displays the current wallpaper.
My wallpaper is a slideshow with about 20 different pictures.
But I cannot find the folder of all of them anywhere. Quote from: theVenerable on July 02, 2020, 02:59:14 AM
Thanks, yes I saw that, but it only displays the current wallpaper.
My wallpaper is a slideshow with about 20 different pictures.
But I cannot find the folder of all of them anywhere.

The classic Desktop Background applet in Windows 10 shows the currently selected desktop background file name with full path.
  • Right-click Start, and click Run to bring up the Run dialog.
  • Type the following command and press ENTER
Code: [Select]shell:::{ED834ED6-4B5A-4bfe-8F11-A626DCB6A921} -Microsoft.Personalization\pageWallpaper
In Windows 10 this opens the classic desktop background applet, showing the current wallpaper image file and the folder path.


Quote from: Hackoo on July 02, 2020, 03:10:27 AM
The classic Desktop Background applet in Windows 10 shows the currently selected desktop background file name with full path.
  • Right-click Start, and click Run to bring up the Run dialog.
  • Type the following command and press ENTER
Code: [Select]shell:::{ED834ED6-4B5A-4bfe-8F11-A626DCB6A921} -Microsoft.Personalization\pageWallpaper
In Windows 10 this opens the classic desktop background applet, showing the current wallpaper image file and the folder path.



Thanks so much!
I was even able to drag and drop my new wallpaper picture into there.
Here is a Bonus for you   
In the attachements , Find_current_wallpaper.zip, You will find 3 files :
  • 1 - Find_current_wallpaper.ps1 ==> Powershell Script .ps1
  • 2 - Find_current_wallpaper.vbs ==> Vbscript to Launch the PowerShell Script .ps1
  • 3 - Readme

To launch the .ps1 Powreshell script you can use this vbscript :
Find_current_wallpaper.vbs
Code: [Select]'Launches find_current_wallpaper.ps1 script
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "Powershell.exe -nologo -ExecutionPolicy Bypass -file Find_current_wallpaper.ps1",0,True
Set WshShell = Nothing
The source code of Find_current_wallpaper.ps1
Code: [Select]Try
{
  # Get script name
  $ScriptName=(Get-Item $PSCommandPath).Name

  # Load Windows Forms and initialize visual styles
  # This action is not needed for Windows 8.x
  # But a user might run this script on previous versions, just because
  [void][System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")
  [System.Windows.Forms.Application]::EnableVisualStyles()

  # Check Windows verison
  $vers=[System.Environment]::OSVersion.Version
  If (!(($vers.Major -eq 10) -or (($vers.Major -eq 6) -and ($vers.Minor -ge 2)))) {
    $result=[System.Windows.Forms.MessageBox]::Show("This operating system is not supported. This script only supports Windows NT 6.2, 6.3 or 10.x. (i.e. Windows 8, Windows SERVER 2012, Windows 8.1, Windows Server 2012 R2 or Windows 10). You seem to be running:`r`r"+[System.Environment]::OSVersion.VersionString, "Script", "OK", "Error");
    break;
  }

  # Initialize counters
  $Path_Start_Delta=24  #The offset at which the image path starts
  $Path_End_Delta=-1    #The offset at which the image path ends... is still unknown
 
  # First, access Windows Registry and get the property containing wallpaper path
  try {
    $TranscodedImageCache=(Get-ItemProperty 'HKCU:\Control Panel\Desktop' TranscodedImageCache -ErrorAction Stop).TranscodedImageCache
  }
  catch [System.Management.Automation.ItemNotFoundException],[System.Management.Automation.PSArgumentException]  {
    $result=[System.Windows.Forms.MessageBox]::Show("Windows does not seem to be holding a record of a wallpaper at this time.`r`r"+$Error[0].Exception.Message,"Script","OK","Error");
    break;
  }
 
  # Decode the property containing the path
  # First, let's assume the path ends at the last byte of $TranscodedImageCache
  $Path_End_Delta=$TranscodedImageCache.length-1
 
  # A sequence of 0x00 0x00 marks the END of string. Find it.
  # The array that we are searching contains a UTF-16 string. Each character is a little-endian WORD,
  # so we can search the array's even indexes only.
  for ($i = $Path_Start_Delta; $i -lt ($TranscodedImageCache.length); $i += 2) {
    if ($TranscodedImageCache[($i+2)..($i+3)] -eq 0) {
      $Path_End_Delta=$i + 1;
      Break;
    }
  }

  # Convert the BYTES holding the wallpaper path to a Unicode string
  $UnicodeObject=New-Object System.Text.UnicodeEncoding
  $WallpaperSource=$UnicodeObject.GetString($TranscodedImageCache[$Path_Start_Delta..$Path_End_Delta]);

 
  # Test item's existence
  try {
    Get-Item $WallpaperSource -Force -ErrorAction Stop | Out-Null
  }
  catch [System.Management.Automation.ItemNotFoundException] {
    $result=[System.Windows.Forms.MessageBox]::Show("Wallpaper is not found at the location Windows believes it is: `r$WallpaperSource", "Script", "OK", "WARNING");
    break;
  } 
 
  # Wallpaper should by now have been found.
  # Present it to the user. If he so chooses, launch Explorer to take him were wallpaper is.
  $result=[System.Windows.Forms.MessageBox]::Show("Wallpaper location: `r$WallpaperSource`r`rLaunch Explorer?", "Find Current Wallpaper", "YesNo", "Asterisk");
  if ($result -eq "Yes")
  {
      Start-Process explorer.exe -ArgumentList "/select,`"$WallpaperSource`""
  }
}
Catch
{
  $result=[System.Windows.Forms.MessageBox]::Show("Error!`r`r"+$Error[0], "Script", "OK", "Error");
  break;
}That's Great !
Bit thanks again

Now just a mouse click and I get instant access to the pretty well hidden folder!


Discussion

No Comment Found