Менять обои в зависимости от времени суток через скрипт или командный файл?


9

Я хочу иметь 2 разных обоев, которые меняются в зависимости от времени суток (6 и 22 часа соответственно), и я хочу отображать ночные только через 22 часа, а дневные только через 6 часов и до 22 часов.

Я не нашел программу, которая могла бы сделать это после ожидания, поэтому я подумал, что это легко реализовать с помощью планировщика задач, выполняющего скрипт. Теперь вопрос не только в том, как реализовать такой сценарий, но также в том, должен ли сценарий включать проверку времени или планировщик задач. Я не уверен, что будет работать лучше, если ПК находится в режиме ожидания.

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

Кто-нибудь может мне помочь? ТИА.

Ответы:


5

На самом деле это очень просто:

  1. Щелкните правой кнопкой мыши на фоне рабочего стола
  2. Выберите «Персонализация»
  3. Нажмите «Фон рабочего стола»
  4. Перетащите изображения в поле или выберите «Обзор» и найдите изображения
  5. Проверьте оба изображения и убедитесь, что первое утро
  6. Подождите до 12:00 и выберите «Смена изображения каждые 12 часов»
  7. Наслаждайтесь!

Это такой элегантный трюк!
aalaap

5

Используйте планировщик задач и создайте VBscript, чтобы изменить обои. Создайте сценарий для каждого обоев, которые вы собираетесь использовать.

dim shell
Set shell = WScript.CreateObject("WScript.Shell")
wallpaper = "C:\path\to\wallpaper.jpg"
shell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", wallpaper
shell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True

Сохраните файл как нечто .vbs и добавьте его в планировщик задач, и вуаля! У тебя все работает.

Также было упомянуто, что обои не будут изменены, если вы выключите компьютер в тот момент, когда он должен измениться. Это неправильно, поскольку задание может быть настроено для запуска при первой загрузке после выбранного времени, поэтому оно будет установлено после запуска компьютера, даже если он был выключен в течение времени, которое должно было быть изменено. Для настройки перейдите в свойства конкретных задач и на вкладку настроек. Отметьте вторую коробку в окне и начинайте.

Этот скрипт отлично работает для меня в Windows 8. Обратите внимание, как я немного изменил оригинальный скрипт, чтобы сделать скрипт короче.

Источник: http://www.ehow.com/facts_7586006_script-change-desktop-background.html


Это настоящий ответ.
Джо Кодер

1

Каждый раз, когда я вижу, что кто-то спрашивает о том, чтобы сделать что-то в определенное время или периодически в Windows, поддерживаю идею использования планировщика задач Windows.

введите описание изображения здесь

Чтобы сделать то, что вы намереваетесь сделать, вы должны создать два такта, каждый из которых по расписанию должен выполнить один сценарий или команду для перехода с одного на другой фоновый рисунок в определенное время, которое вы хотите. Эти команды должны иметь возможность автоматически менять обои Windows, и самый простой способ сделать это - использовать реестр Windows. Здесь вы можете найти HOWTO: Изменить обои для рабочего стола с помощью следующего раздела реестра:

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

Итак, создайте свои задачи, устанавливая значения в своем реестре, и вы сможете изменить его автоматически, без необходимости устанавливать какие-либо сторонние приложения.


Спасибо, но для этого требуется перезагрузка, но она должна быть применена немедленно. Я тоже уже пробовал эту программу. Он не может делать то, что я хочу, потому что он не будет менять обои, скажем, ночь на день, если ПК пропустил время переключения, потому что он был в режиме ожидания, например.
Патрик

Это ему совсем не помогает - следовательно, то, что я написал в своем посте, требует перезапуска или выхода из системы и входа в систему для внесения изменений, поэтому не является автоматическим.
PnP

Вы на самом деле довольно близки, вам просто нужно обновить системные параметры после этого. Посмотрите на мой ответ.
Стин Шютт,

1

Я собирался сделать это довольно долго, а затем вернулся к теме, настраивая конфигурацию обратно так, как мне нравится, после переустановки ОС.

После просмотра проекта я нашел файл конфигурации слайд-шоу; (% APPDATA% / Microsoft / Windows / Themes / slideshow.ini). Этот файл содержит строку «ImagesRootPIDL =», которая после небольшого поиска указывает, что следующая большая строка букв, цифр и символов не работает, «uuencoded PCIDLIST_ABSOLUTE», по-видимому, это способ найти каталог в Windows в более низкий уровень, чем при использовании пути.

В любом случае, если коротко, похоже, что этот файл изменяется, когда изображение добавляется в каталог для слайд-шоу или когда слайд-шоу изменяется на новый каталог. Поэтому я решил написать пакетный файл два раза в день, в зависимости от переменной% TIME%, скопировать .ini для каждого из моих слайд-шоу в папку конфигурации и добавить их днем ​​или ночью, а затем перезаписать файл .ini в Папка темы с соответствующим файлом .ini.

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

Я довольно новичок в Windows OS, поэтому приношу свои извинения, если в нем слишком много очевидных утверждений, или это легко сделать, нажав несколько раз. Я полагаю, что подобные вещи - самый быстрый способ изучить внутреннюю работу ОС, хотя я думаю, что я мог бы написать это примерно в пяти строках в скрипте linux bash, а не в сорока с лишним колосах.


0

К сожалению, я не думаю, что в Windows есть что-то встроенное, что позволило бы вам сделать это без необходимости фактически выходить из системы и снова входить в нее. Поскольку обои можно контролировать через реестр, вы можете создать пакетный файл для изменения записи реестра. - но изменения в самих обоях не будут видны, пока вы не выйдете из системы и не войдете обратно. Вы можете попробовать стороннее приложение, такое как: http://download.cnet.com/Automatic-Wallpaper-Changer/3000-2336_4- 10560884.html

Надеюсь это поможет.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.