Шлях до поточних фонів робочого столу в Windows 10?


54

Існує ще одне питання, яке дозволяє користувачам знаходити шлях до свого поточного фонового зображення за допомогою a cmd команду.

Як я можу дізнатися шлях до поточного зображення робочого столу?

У Windows 10 це більше не працює. Вона повертає тільки перше зображення в папці, вона не змінюється з фоном при їх переході. Мені потрібна подібна команда, яка повертає шлях до поточного зображення на тлі робочого столу, яка фактично працює в Windows 10, якщо вона існує.

Відповіді:


84

Копію поточних шпалер можна знайти, ввівши нижче шлях у адресному рядку Провідника Windows

Шлях 1 -
%AppData%\Microsoft\Windows\Themes\CachedFiles

Якщо ви не знайшли тут копію поточного фонового зображення робочого стола, спробуйте замість нього

Шлях 2 -
%AppData%\Microsoft\Windows\Themes\TranscodedWallpaper

Примітка : Файл TranscodedWallpaper У Path 2 немає розширення файлу. Використовуйте "Відкрити за допомогою" або "Як ви хочете відкрити цей файл?" діалогове вікно і виберіть будь-який переглядач зображень, наприклад, "переглядач фотографій Windows", "Honeyview" або додаток "Фотографії".

Примітка для Windows 10 : Наведені вище місця мають обмеження. Наприклад, якщо шпалери, які ви шукаєте, більше не відображаються на вкладці "Фон" у програмі "Налаштування", неможливо відновити її. Це буде працювати для ваших останніх п'яти шпалер, але нічого старшого. ( Джерело )

Типові шпалери Windows можна знайти в

%SystemRoot%\Web

Ви побачите 3 папки

  • " 4K "для шпалер 4K,
  • " Екран "для фонів блокування екрана, & amp;
  • " Шпалери "для шпалер за замовчуванням для Windows

Встановлені теми (Aero тощо):

%SystemRoot%\Resources\Themes

Теми, встановлені для кожного користувача (включаючи попередньо встановлені з OEM):

%LocalAppData%\Microsoft\Windows\Themes  

Якщо ви шукаєте розташування зображень Lock Screen - відвідайте це питання суперкористувача .

Особисто я користуюся Фоновий комутатор Джона керувати фонами робочого столу.

Фоновий комутатор John має опцію для поточних / попередніх фонів робочого столу (ті, які встановлені програмою). Клацніть правою кнопкою миші на значку в треї і виберіть Переглянути поточне зображення і поточне тло робочого столу відкриється у засобі перегляду фотографій Windows або у переглядачі зображень за умовчанням). У програмі перегляду фотографій Windows можна клацнути правою кнопкою миші на зображенні & amp; виберіть Відкрийте розташування файлу для перегляду вихідного розташування поточного фону робочого столу у файловому провіднику Windows.


Проблема з перемикачем полягає в тому, що мені потрібен скрипт python, щоб мати можливість опитувати шлях. Попередня команда працювала красиво у вікнах 7. Також, що новий шлях не існує навіть на моєму вікні 10 машини.
cujo

додав другий шлях
xypha

Його не те, що я сподівався, тому що тепер я повинен дивитися властивості файлу для змін, але він працює. Дякую
cujo

Цей метод не надає місцезнаходження оригінальної фотографії, а скоріше копію, яку Windows робить під час підготовки до відображення.
Edward Brey

@Edward Brey - Використовуйте фоновий перемикач Джона (або декілька інших комутаторів / завантажувачів) для перемикання шпалер і пошуку вихідного місця. Наскільки мені відомо, Windows 10 не підтримує її. Можливо, підніміть його як запит функції Відгуки Microsoft
xypha

5

У мене Windows 10, версія 1709. Один з інших відповідей змусив мене шукати в реєстрі, і я знайшов саме те, що мені потрібно в чіткому тексті

HKEY_CURRENT_USER\Control Panel\Desktop\WallPaper

Декодування не потрібно.


я використовую Bing Desktop змінити шпалери. Я зміг знайти шлях до цих зображень шпалер за допомогою цього. Дякую!
anacron

3

Windows 8 і 10 все ще зберігають оригінал шлях поточного фонового зображення - а не кешований / транскодований файл, як у відповіді xypha:

HKEY_CURRENT_USER\Control Panel\Desktop\TranscodedImageCache

Корпорація Майкрософт не хоче, щоб речі були простими: це не звичайний текст, тому потрібно декодувати його з двійкової.

Веб-сайт Winhelponline створив кілька сценаріїв (VBA та PowerShell), які можуть друкувати ім'я зображення, і запустити Explorer, щоб вказати на файл зображення.

http://www.winhelponline.com/blog/find-current-wallpaper-file-path-windows-10/


1
Це не працює з кількома дисплеями. Неперевірена за допомогою одного дисплея.
cujo

0

Ви не пояснюєте, чого ви хочете досягти, я можу дати кілька порад тут на підставі припущення: ви хочете змінити шпалери в певних умовах (наприклад, один шпалери кожного разу при перезавантаженні комп'ютера) або використовувати звичай файл як шпалери.

У Windows 7 шпалери зазвичай знаходилися в %AppData%\Microsoft\Windows\Themes\TranscodedWallpaper.
У Windows 10 ви його знайдете %AppData%\Microsoft\Windows\Themes\CachedFiles.

Ви також можете допитувати реєстр на HKEY_CURRENT_USER Панель керування Робочий стіл TranscodedImageCache але зверніть увагу на попередження про програми, які НЕ пишуть файл на диск!

Якщо ви хочете створити свій власний сценарій CMD, це може бути ненадійним, якщо ви встановите шпалери не з Windows, а з зовнішньої програми. Наприклад, якщо я бачу в своєму браузері хороший маг, я встановлюю його як шпалери прямо звідти. Те ж саме для IrfanView. Я можу легко назвати ще 10 популярних програм, які могли б змінити шпалери на власний шлях.

Зауважте, що деякі програми змінюють фоновий малюнок без запису файлу на диск. Це можна зробити за допомогою підключення до вікна робочого столу Microsoft Windows і малювання безпосередньо на його полотні. Ось як анімації GIF / AVI малюються на робочому столі.

Існує ще одна проблема, якщо ви створюєте свій власний скрипт: як ви працюєте з зображеннями, які не мають такого співвідношення сторін, як на робочому столі, або коли змінюється дозвіл на робочий стіл?

Рішення (якщо я гадаю, що ваша проблема правильна) буде використовувати програму, подібну до фонового комутатора Джона або BioniX Шпалери для робочого столу . Пізніше набагато більш настроюється і може управлятися за допомогою командного рядка. Вона також має автоматичне виявлення, щоб визначити найкращий спосіб зміни розміру зображення (fill / fit / tile). BioniX також може малювати GIF без запису на диск (як описано вище).

Ще краще було б скористатися опцією "Заблокувати папку". enter image description here
Встановіть BioniX, щоб змінити шпалери кожні 60 секунд (не хвилюйтеся, ви не побачите нові шпалери кожні 60 секунд, оскільки ви будете використовувати тільки один файл). Встановіть BioniX для блокування будь-якої папки (скажімо, c: Wallpapers). Усередині цієї папки ви помістіли один файл, який називається "My Wallpaper.jpg". BioniX буде використовувати цей файл як шпалери кожні 60 секунд. Тепер, кожен раз, коли ви хочете змінити шпалери, ви заміните старий "My Wallpaper.jpg" на новий файл. BioniX побачить зміни, які ви зробили до папки, і застосуєте новий файл (протягом 60 секунд).


Дайте нам знати, чого ви хочете досягти за допомогою сценарію, щоб отримати краще рішення.


1
Питання вказує, що я шукаю шлях до поточного файлу, не шукаючи його активного налаштування. На мою думку, це досить ясно, що я намагаюся досягти. Ваше рішення говорить лише про те, що програма встановлюється програмно, а не якщо вона повертає шлях.
cujo

1
@cujo - І моя відповідь також говорить вам, де знайти файл - і дає вам деякі попередження про ваш підхід.
Rigel

Я маю на увазі "рішення", тому що ваша відповідь не зосереджується в першу чергу на тому, що запитане питання, і більше про динамічне програмування середовища
cujo

Я прочитав вашу відповідь, він не додає нової інформації щодо розташування файлів, які ще не були представлені. І ви говорите про питання, які не мають значення. І проблеми, які ви представляєте, виходять за рамки питання. Шлях - це шлях, співвідношення сторін не має значення.
cujo

2
@Empire - Обсяг цього 2-річного питання, з прийнятою відповіддю, мені здається ясним. Питання полягало в наступному: "Мені потрібна подібна команда, яка повертає шлях до поточного зображення на тлі робочого столу, яка фактично працює в Windows 10, якщо вона існує." який надається прийнята відповідь (тобто %AppData%\Microsoft\Windows\Themes\CachedFiles )
Ramhound

0

Щоб отримати "Transcoded" PATH у чистому тексті, зробіть це в PowerShell:

$TIC=(Get-ItemProperty 'HKCU:\Control Panel\Desktop' TranscodedImageCache -ErrorAction Stop).TranscodedImageCache
[System.Text.Encoding]::Unicode.GetString($TIC) -replace '(.+)([A-Z]:[0-9a-zA-Z\\])+','$2'
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.