Змінення фону машини Windows 7 за допомогою реєстру


18

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

Прочитавши кілька відповідей,

Я створив Wall.regіз наступним вмістом і створив ярлик у Start upпапці, щоб файл виконувався автоматично.

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Control Panel\Desktop]
"Wallpaper"="C:\Users\Public\Pictures\Sample Pictures\Koala.jpg"

Я щось пропускаю? Це не працює :(


1
Спробуйте використовувати подвійні косі нахили в шпалері.
thane

Відповіді:


9

Перейдіть до

HKEY_CURRENT_USER \ Панель управління \ Робочий стіл

і змінити значення ключа Шпалери на повний шлях вашого зображення.


9
І кожен раз, коли ви входите в груповий графік, скидайте шпалери до оригіналу.
Джо Тейлор

1
@JoeTaylor - Не, якщо замість зміни шляху ви знайдете Шлях і замініть зображення на потрібне вам зображення, але з такою ж назвою. :)
Suamere

1
@Suamere - Що, якщо він розміщений на сервері (яким він повинен бути), було б неможливо для звичайного користувача.
Джо Тейлор

3

Я знаю, що це старий протектор, і Windows 7 - ОС, яка швидко застаріває. Але для випадкових користувачів: я цим займався протягом багатьох років у своєму магазині. Я досить близький до ІТ, щоб мати певні привілеї на своєму ноутбуці, але недостатньо близько, щоб зупинитись, аби робити дурні ГРУ, що, звичайно, впливає і на мене.

У XP я впевнений, що в Windows 7 це лише натхнення: такі зміни в Реєстрі не набудуть чинності, поки ви не перезавантажите систему! А оскільки ви намагаєтесь обійти ГПУ, це дорівнює "місії неможливій" у багатьох ситуаціях. Однак існує спосіб змусити застосувати оновлення Реєстру без перезавантаження ...

Річ у тому, що вам не потрібно перезавантажувати - вам потрібно змити кеш налаштувань реєстру - що є частиною перезавантаження .

Рішення (як мінімум на XP):

@echo off
call :quiet>nul 2>&1
goto :EOF
:quiet
:: Configure Wallpaper (command prompt method works only with bmp files)
REG ADD "HKEY_CURRENT_USER\Control Panel\Desktop" /V Wallpaper /T REG_SZ /F /D "C:\WINDOWS\Web\Wallpaper1.bmp" 
REG ADD "HKCU\Control Panel\Desktop" /V WallpaperStyle /T REG_SZ /F /D 0
REG ADD "HKCU\Control Panel\Desktop" /V TileWallpaper /T REG_SZ /F /D 1
:: Make the changes effective immediately (only XP-compatible)
RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters

Це добре працює для мене на моїй машині XP, трюк - останній рядок: виконати "user32.dll, UpdatePerUserSystemParameters" як частину bat-файлу. Це займає місце "перезавантаження". :-)

Я помістив це в папку "Пуск" і додав комбінацію клавіш швидкого доступу до файлу bat: Таким чином, мій ПК почався з моїх власних шпалер, і коли GPO оновлюється кілька разів протягом дня, я натискаю клавішу швидкого доступу, і повернути мій переважний погляд (який нескінченно гарніший, ніж "чорний екран депресії", який є акціонерним товариством) ;-)

У мене поки що немає можливості виправити це на моєму новому ноутбуці (під керуванням Win 7), але, мабуть, хтось там може надихнутися цим (XP) поведінкою та подальшими дослідженнями.


1
@Ramhound - Ну, голосування вниз - це трохи необдумані, якщо ви запитаєте мене! Звичайно, я ні - інакше я би сказав так - і не писав "У мене ще немає, щоб виправити це на своєму новому ноутбуці (під керуванням Win 7), але я думаю, що хтось там може надихнутися цим" (XP) поведінка та подальші дослідження. " Я натрапив на цю сторінку, шукаючи способу зробити це на своєму вікні Win 7 ... і якби у вас було трохи терпіння, ви б побачили моє оновлення, щоб прийти далі ...
Hansjp

Я просто видалив свої коментарі, щоб уникнути зайвих
пінгв

2

Для тих із вас, хто ще працює з ящиками XP, я залишаю свою попередню відповідь недоторканою.

Однак зараз я можу поділитися підходом до вирішення проблеми у вікні Windows 7:

  1. Як я вже говорив раніше, ви не хочете перезавантажувати ПК, оскільки ви
    боретеся за групову політику, яка застосовується при перезавантаженні (і в моєму
    особистому випадку кожні кілька годин протягом дня). Однак для змін
    у реєстрі потрібна розгорнута настройка грошових коштів, перш ніж вони стануть
    активними. Перезавантаження робить це.

Нам потрібно знайти інший спосіб досягнення мети: "change-background-of-a-windows-7-machine ..." - Я пропускаю частину "using-register", тому що я не думаю, що це можливо, і чесно кажучи, я не думаю, що це правильний підхід у Windows 7! Це було на XP - як я вже говорив у своїй попередній відповіді.

Магічне слово зараз - "Themepack" - і магічне знання: "Це виконується!" Вам потрібен автоматизований метод його виконання та подолання його вбудованих наслідків.

  1. Я використовую AutoHotkey версії 1.1 ( http://ahkscript.org/ ) для ряду речей на своєму ноутбуці, і якщо у вас є дозволи, необхідні для запуску цієї програми, ви добре:
  2. (Припустимо, що ви більше нічого не робите за допомогою функції AutoHotkey): Створіть файл txt, назвіть його чим завгодно, але надайте йому розширення імені файлу ".ahk" замість ".txt" та збережіть його в папці Startup ("C: \ Users \ введіть своє ім’я користувача \ AppData \ Роумінг \ Microsoft \ Windows \ Меню "Пуск" \ Програми \ Запуск "у моєму випадку". Тепер він працюватиме при кожному запуску.

Редагуйте файл за допомогою Блокнота чи подібного інструменту: Вставте ці рядки:

    ; Setting wallpaper on the desktop on Win 7 which is: Apply a Themepack!
    <^<+D::
     Run "C:\Laptop theme.themepack"  ; Apply your Themepack
     WinWait Personlige indstillinger ; Wait for the window to get focus (the appearance is mandatory on an "apply" command)
     WinClose                         ; Close the last found window
    return

Зауважте, що я не тільки запускаю код при запуску, але також додаю гарячу клавішу (LCTRL + LSHIFT + D), яка виконує цю частину сценарію за бажанням.

Зверніть увагу також на командний рядок "WinWait": Моя система - данська, тому назва мого вікна "Персоналізація" - "Персональний інструмент". Вам потрібно вставити тут заголовок вікна у власній системі. Прочитайте файли довідок AHK, як це зробити, якщо це недостатньо очевидно, щоб ви здогадалися, що правильно.

  1. Тепер залишається лише персоналізувати ноутбук Windows 7 раз і назавжди (якщо групова політика не заважає вам (користувачам) змінювати речі, ви завжди можете змінити речі). Коли ви задоволені, збережіть отриманий Themepack на шляху, який ви вказали в сценарії (тобто "C: \ Laptop theme.themepack"), і закінчіть .

  2. Примітка: Якщо ви нічого не можете зберегти на "C: \", ви можете помістити тематичний пакет куди завгодно - у тому числі у ваші особисті папки користувача. Перевага цього полягає в тому, що ви зберігаєте сценарій навіть тоді, коли ІТ-відділ змінює ваш ноутбук - за умови, що вони піклуються про резервне копіювання папок користувача. Мій особистий смак полягає лише в тому, щоб все було коротким, і мені не подобається підключатися до мережевих спільних ресурсів під час запуску, якщо я можу допомогти. Що я можу.


1
І звичайно .. очевидне завжди ховається на очах! Ви можете просто зберегти Themepack у папці Startup! ... Це все, що ви хочете "автоматично виконувати при запуску". Я вважаю, що за правилом це завжди буде виконуватися після групових груп - це, принаймні, в моїй системі. Єдиний недолік: Вам не вдається вручну закрити вікно налаштувань, коли ви не скриптуєте цю частину. Але це рятує вас від завивки AutoHotkey, тому я думаю, що варто згадати.
Hansjp

Отже ... як це створюється Themepack?
Емануеле Сіріачі

1
Ви можете не допомогти, але мати його. Windows створить його для вас під час завантаження операційної системи. Якщо ви внесете зміни, скажімо, у зображення робочого столу, "не збережена тема" з’явиться сама. Все, що вам потрібно зробити, - це 1) зберегти його, щоб отримати файл, і 2) скопіювати файл у місце розташування, де він знаходиться. Щоб знайти його: клацніть правою кнопкою миші робочий стіл, виберіть Особисті налаштування.
Hansjp

1

Якщо Сервер керує вашими шпалерами за допомогою GPO, вам доведеться скидати шпалери кожного разу при вході в систему або оновлення GPO на вашій машині.

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

Що слід врахувати:

Ви порушуєте ІТ-політику компанії, роблячи це?
Чи можете ви змінити реєстр? і створити завдання для запуску для цього? тобто у вас є привілеї?
Чи варто клопоту?


Я можу редагувати реєстр. Чи можете ви дати мені уявлення про те, як я можу створити файл reg та все. ?
Рауф

Будь ласка, дивіться мою редакцію.
Рауф

Якщо ви просто імпортуєте ключ реєстру вручну. тобто подвійне клацання по ньому. Це працює?
Джо Тейлор

Ні. Це не працює.
Рауф

Я б напевно подумав поговорити з вашим ІТ-відділом про це. існує ряд налаштувань GP, які можуть змінити / не допустити користувача змінити шпалери. якщо вони зробили це з якоїсь причини, ви можете опинитися в гарячій воді, щоб заплутатися в реєстрі та змінити її.
Джо Тейлор

1

Просто збережіть шпалери 'koala' у файлі шпалер за замовчуванням, який використовує ваша політика.


Цей файл, мабуть, не піддається світовому запису, і ОП не говорить про те, що він має адміністративні привілеї.
G-Man каже: «Відновіть Моніку»

Працював для мене, але ти маєш рацію, це може не працювати для нього.
MattPark

0

Щойно спробували це. Коли ви копіюєте користувача до користувача за замовчуванням, він зберігає жорсткий код до області тем оригіналів користувачів, тому я намагався змінити фон вихідних користувачів на загальнодоступну область.

Я виявив, що вам потрібно поставити подвійні риски "\\" на шляху, тобто. "C: \\ Користувачі \\ ....." в іншому випадку запис .reg ігнорується!


0

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

Під час мого налаштування Win7 я встановив HKEY_CURRENT_USER \ Панель управління \ Desktop \ Шпалери на якесь зображення, і це нічого не призведе до фактичного фону робочого столу, хоча в Панелі керування -> Персоналізація виглядатиме так, як налаштування прийняли. Це зводило мене з розуму, поки я не зрозумів, що вихід із системи та повернення в неї змусять нових шпалер ухвалитись.

Оновлення 9/8: Це не відповідає на питання ОП в тому, що він використовує не лише реєстр, але в якості подальшого моменту я ніколи не знайшов задовільного способу зміни шпалер за допомогою просто реєстру. Якщо ви можете написати та розгорнути якийсь код, я виявив, що виклик Win32 SystemParametersInfoз SPI_SETDESKWALLPAPERпрапором набув чинності шпалер негайно без танцю виходу / входу. Детальну інформацію див. У цій відповіді . Знову ж таки, це не допоможе, якщо ви ведете боротьбу з GPO за контроль над цим налаштуванням.


Ви згадуєте про проблему необхідності виходу з користувача, щоб застосувати налаштування, але якщо ви це зробите, то GPO впливає, але не згадуєте, як з цим впоратися.
Рамхаунд

Вибачте, я намагався зазначити у своїй відповіді, що це корисно лише тоді, коли у вас немає GPO, який переорієнтує налаштування.
user1454265

Крім того, це може чи не допоможе у вашій ситуації, але варто слідкувати далі - я ніколи не знайшов задовільного способу змінити шпалери за допомогою лише реєстру. Я закінчився вирішенням рішення, яке використовувало виклик Win32 до SystemParametersInfo. Див: stackoverflow.com/questions/1061678 / ...
user1454265

Оновлено мою відповідь.
user1454265

Рамхаунд: Я оновив свою відповідь точно так, як ви просили, але ви видалили свої коментарі та перейшли на рейтинг. Чи можемо ми поговорити про це в чаті? Я чесно намагаюся бути тут корисною тим, що я можу зробити свій внесок.
user1454265

-1

Я усвідомлюю, що це старе. Однак мені довелося вирішити саме це питання, і спосіб це зробити трохи підлий.

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

Коли GPO перейде до його обробки, він отримає відмову в доступі для цього конкретного налаштування, і ви, таким чином, затрималися з потрібними налаштуваннями.

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


1
Можливо, мені потрібно більше кави, але хіба це не протилежне тому, що задається питанням?
fixer1234

... і насправді не дає рішення, лише якесь пояснення.
not2qubit
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.