Título: Papel Tapiz con carpeta de imágenes Publicado por: bybaal en 2 Febrero 2021, 21:26 pm Necesito saber cómo se obtiene la ruta de la imagen de fondo en windows 8.1 y si es posible en windows 10 también
OJO!!!!! cuando esta puesta una carpeta con varias imágenes que van cambiando cada cierto tiempo. Título: Re: Papel Tapiz con carpeta de imágenes Publicado por: EdePC en 2 Febrero 2021, 21:39 pm Las que vienen por defecto: C:\Windows\Web\Wallpaper\
Se obtienen buscándolas, por ejemplo un buen buscador de archivos es Everything de VoidTools: https://www.voidtools.com/ . Si mantienes el cursor del mouse sobre la imagen aparece su nombre con su extensión, luego solo buscas ese nombre en Everything, justo debe estar en el Disco C, carpeta igual al que muestra la pantalla de configuración de Fondos de Escritorio (Flores, Tierra, Windows, etc) Título: Re: Papel Tapiz con carpeta de imágenes Publicado por: bybaal en 3 Febrero 2021, 00:32 am Parece que no me explique bien, yo me refiero a que en el registro de Windows en la clave
HKEY_CURRENT_USER\Control Panel\Desktop en el valor Wallpaper aparece la ruta completa de la imagen de papel tapiz actual. El problema es que cuando pongo una carpeta de imágenes para que cambie el papel tapiz cada cierto tiempo lo que aparece en ese valor del registro es C:\Users\Usuario\AppData\Roaming\Microsoft\Windows\Themes\TranscodedWallpaper Y de esta manera no puedo obtener la ruta de la imagen actual y quisiera saber si existe algún método para obtener la ruta en este caso Gracias Título: Re: Papel Tapiz con carpeta de imágenes Publicado por: EdePC en 3 Febrero 2021, 01:08 am Pues esa misma es la ruta de la imagen actual: C:\Users\Usuario\AppData\Roaming\Microsoft\Windows\Themes\TranscodedWallpaper
Solo que ese TranscodedWallpaper no tiene extensión pero si es la imagen actual que va creando y reemplazando el propio Windows cada cierto tiempo, dicho tiempo es especificado en la propia configuración de Fondo de Pantalla. Puedes hacer la prueba copiándolo y renombrándolo con la extensión apropiada, ya sea .jpg o .png Título: Re: Papel Tapiz con carpeta de imágenes Publicado por: bybaal en 3 Febrero 2021, 04:28 am Waooo, nunca se me hubiera ocurrido eso. Pero ese mecanismo solo empeora mi situación, ya que no obtengo la ruta de la imagen original, solo la de la copia que hace windows.
Lo que necesito es la ruta de la imagen original que ahora me parece más complejo de obtener Gracias Título: Re: Papel Tapiz con carpeta de imágenes Publicado por: Mr. NoBody en 4 Febrero 2021, 17:01 pm Lo que necesito es la ruta de la imagen original que ahora me parece más complejo de obtener La ruta que deseas obtener puedes localizarla, codificada, en el valor de registro: 'HKEY_CURRENT_USER\Control Panel\Desktop' > 'TranscodedImageCache', en formato de texto Unicode (UTF-16). He desarrollado un sencillo script en PowerShell / VB.NET que se puede iniciar por linea de comandos para obtener la ruta del wallpaper actual: Código
(https://i.imgur.com/yWtvZ3h.png) Esta parte puedes eliminarla completamente del script si lo prefieres: Código ...de esta forma podrías iniciar el script de PowerShell desde un Batch-script o como desees para automatizar la obtención del valor de la ruta del wallpaper sin detener la ejecución del script. PD: Esta metodología funcionará siempre y cuando el usuario no haya eliminado intencionada o involuntariamente los valores de registro 'TranscodedImageCache' y 'Wallpaper' después de haber aplicado el wallpaper, lo cual no debería suceder en ninguna circunstancia a menos que uno vaya al registro de Windows y los elimine intencionadamente como ya dije. Saludos. Título: Re: Papel Tapiz con carpeta de imágenes Publicado por: Mr. NoBody en 10 Febrero 2021, 01:12 am En vista de que por otros comentarios tuyos que vi en el foro al parecer utilizas VB.NET, te comento otras dos opciones utilizando directamente la API de Windows.
La primera es mediante una llamada a la función 'SystemParametersInfo' pasándole el valor 'SPI_GETDESKWALLPAPER' (0x0073) al parámetro 'uiAction': https://msdn.microsoft.com/en-us/library/windows/desktop/ms724947(v=vs.85).aspx (https://msdn.microsoft.com/en-us/library/windows/desktop/ms724947(v=vs.85).aspx) Código
Modo de empleo: Código
La segunda es mediante la función 'GetWallpaper' de la interfaz 'IActiveDesktop': https://msdn.microsoft.com/en-us/library/windows/desktop/bb776357%28v=vs.85%29.aspx (https://msdn.microsoft.com/en-us/library/windows/desktop/bb776357%28v=vs.85%29.aspx) Código
Modo de empleo: Código
|