Habiendo actualizado recientemente a Windows 8, mi secuencia de comandos para recuperar la imagen de fondo de escritorio actual se ha roto.
Para Windows 7, ¿cómo podría encontrar la ruta a la imagen de escritorio actual? , esto funciona muy bien. Sin embargo, esa clave de registro ahora siempre contiene
C:\Windows\web\wallpaper\Windows\img0.jpg
¿Cuál es la nueva clave de registro utilizada para Windows 8?
He encontrado dos posibles soluciones.
En primer lugar, esta clave contiene lo que parece una ruta codificada en Base64:
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Wallpapers\Images\ID2
Y luego está el "archivo de propiedades de tema personalizado" que también contiene una sección "[SlideShow]" que se parece a Base64:
C:\Users\Scott\AppData\Local\Microsoft\Windows\Themes\Custom.theme
windows-8
desktop-customization
Scott Bennett-McLeish
fuente
fuente
Respuestas:
Las dos claves de registro a continuación almacenan la ruta original de la imagen de fondo actual:
Están en formato Unicode, al decodificar eso, uno tendrá la ruta completa a la imagen de fondo de pantalla actual.
fuente
[System.Text.Encoding]::Unicode.GetString($bytes[24..($bytes.length-1)])
, suponiendo que$bytes
contiene el valor de la clave$bytes=(New-Object -ComObject WScript.Shell).RegRead("HKEY_CURRENT_USER\Control Panel\Desktop\TranscodedImageCache_000"); $path=([System.Text.Encoding]::Unicode.GetString($bytes[24..($bytes.length-1)]) -split "\0")[0]
fuente
Verifique el valor
HKEY_CURRENT_USER\Control Panel\Desktop\Wallpaper
REG_SZ (cadena). Esto le mostrará la ruta al TranscodedWallpaper.jpg actualmente en uso.fuente
Para Windows 8 o posterior, puede iniciar este archivo vbs:
https://gist.github.com/raveren/ab475336cc69879a378b
O use este script de autohotkey:
http://www.autohotkey.com/board/topic/111813-open-current-wallpaper-under-mouse-in-windows-8/
Ambos creados por mí.
fuente
En Windows 8 y 8.1 (y, según se informa, 10), si ha configurado su fondo de pantalla desde Windows Picture Viewer (abriendo una imagen en Viewer y haciendo clic en "Establecer como fondo de escritorio" en el menú contextual), su ubicación será
fuente
En mi situación, tengo una enorme carpeta de imágenes a través de las cuales mi fondo de pantalla pasa. Me aburro de algunos después de un tiempo y quiero eliminarlos o, a veces, me pregunto cuál es el nombre de la imagen porque puede tener la descripción de la imagen.
Creé 2 scripts basados en los comentarios anteriores, uno para obtener la ruta de la imagen actual y otro para eliminarlo. Solo probé esto en Windows 10.
Obtenga la ruta de la imagen (getwallpaper.ps1)
Eliminar la imagen (deletewallpaper.ps1)
fuente
C:\Users\<USERNAME>\AppData\Roaming\Microsoft\Windows\Themes
.TranscodedWallpaper
<NAME>.JPG
fuente