9

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

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

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

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

5 ответов5

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

5

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

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

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

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

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

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

1

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

Изучив проект, я нашел файл конфигурации слайд-шоу (% APPDATA%/Microsoft/Windows/Themes/slideshow.ini). Этот файл содержит строку «ImagesRootPIDL =», которая после небольшого поиска в Google указывает, что следующая большая строка букв, цифр и символов не работает, "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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .