
Я настроил Планировщик заданий на переключение различных задач в зависимости от времени суток, например, на установку темного режима Windows ночью и светлого режима днем. В соответствии с этой настройкой я хотел бы автоматически отключать расширение Firefox Dark Reader днем и включать его ночью.
Есть ли способ с помощью Планировщика заданий (или аналогичного автоматизированного метода) отключить определенное расширение Firefox, например Dark Reader?
решение1
Я проследил работу Firefox при отключении или включении расширения Dark Reader в about:addons
и обнаружил, что единственным эффектом отключения или включения является изменение файла
extensions.json
внутри папки профиля.
В частности, следующий жирный текст переключается между
true
и false
:
{"идентификатор":"[email protected]","syncGUID":"{a0e1e725-bfcf-4bf6-bd72-9a0e2c9d766d}","version":"4.9.62","type":"extension","loader":null,"updateURL":null,"installOrigins":null,"manifestVersion":2,"optionsURL":null,"optionsType":null,"optionsBrowserStyle":true,"aboutURL":null,"defaultLocale":{"name":"Dark Reader","description":"Темный режим для каждого сайта. Берегите свои глаза, используйте темную тему для ночного и дневного просмотра.","creator":"Александр Шутов","developers":null,"translators":null,"contributors":null},"visible":true,"active":true,"пользовательОтключен":ложь,
Чтобы любые изменения этого файла вступили в силу, необходимо перезапустить Firefox. Изменения необходимо вносить при закрытом Firefox.
Вместо того чтобы предлагать редактировать файл текстом, более простым решением было бы сохранить две копии файла: одну, когда расширение включено, и другую, когда оно отключено.
Две запланированные задачи затем просто завершат работу Firefox, если он запущен с помощью командытасккилл следующее :
taskkill /im firefox.exe /f
Затем скопируйте нужную версию extensions.json
в папку профиля. Перезапуск Firefox не рекомендуется в запланированной задаче.
Если завершение работы Firefox окажется слишком радикальным, вам просто придется перезапустить его вручную через некоторое время после выполнения запланированной задачи.
Вам нужно будет пересоздать две версии extensions.json
всякий раз, когда вы установите, удалите или каким-либо образом измените состояние любого расширения, которое не является Dark Reader. Если это проблема, вы можете реализовать другое решение, которое изменяет на месте файл extensions.json
.
Примечание: Чтобы найти папку профиля в Firefox, перейдите по ссылке Настройки > Справка > Дополнительная информация по устранению неполадок, поле «Папка профиля».
решение2
Вы можете сделать скрипт, который будет это делать, и использовать планировщик заданий, чтобы запустить его в то время, когда вы хотите, чтобы он запустился. Следуйте инструкциям:
Сначала откройте любой текстовый редактор, например «Блокнот», и скопируйте и вставьте следующий код:
@echo off
cd "C:\Program Files\Mozilla Firefox"
start firefox.exe -no-remote -CreateProfile "tempProfile"
timeout /t 5 /nobreak
start firefox.exe -P tempProfile -no-remote "about:config"
timeout /t 5 /nobreak
"C:\Program Files\Mozilla Firefox\firefox.exe" -no-remote -P tempProfile -CreateProfile "tempProfile" "about:config#extensions.{EXTENSION_ID}.enabled"
timeout /t 5 /nobreak
taskkill /f /im firefox.exe
- Сохраните файл с
.bat
расширением . - Откройте Планировщик заданий Windows.
- Нажмите «Создать задачу» на панели «Действия».
- Заполните вкладку «Общие» именем. Описание необязательно.
- На вкладке «Триггеры» задайте расписание для задачи.
- На вкладке «Действия» нажмите «Создать» и установите «Действие» на «Запустить программу».
- В поле ввода «Программа/Скрипт» перейдите к местоположению файла с
.bat
расширением, чтобы выбрать его. - Нажмите «ОК» и сохраните задачу.
Обратите внимание, что вам нужно заменить {EXTENSION_ID}
в коде выше на идентификатор расширения, который вы можете узнать в менеджере дополнений. Идентификатор находится в URL-адресе страницы для этого конкретного расширения. Если идентификатор расширения — это asuperuserquestion@superuser
строка должна быть:
"C:\Program Files\Mozilla Firefox\firefox.exe" -no-remote -P tempProfile -CreateProfile "tempProfile" "about:config#[email protected]"
Надеюсь, это решит проблему :)