我已将任务计划程序设置为根据一天中的时间切换各种任务,例如将 Windows 在夜间设置为暗色模式,在白天设置为亮色模式。为了保持此设置,我想在白天自动禁用 Firefox 的 Dark Reader 扩展程序,并在晚上启用它。
任务计划程序(或类似的自动化方法)有没有办法禁用特定的 Firefox 扩展,例如 Dark Reader?
答案1
我曾在 中跟踪过禁用或启用扩展 Dark Reader 时 Firefox 的执行情况about:addons
,发现禁用或启用的唯一效果就是修改
extensions.json
配置文件夹内的文件。
更具体地说,以下粗体文本在
true
和之间切换false
:
{“ID”:”[电子邮件保护]","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":"Alexander Shutau","developers":null,"translators":null,"contributors":null},"visible":true,"active":true,“用户已禁用”:false,
对此文件的任何修改都需要重新启动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}
上述代码中的 替换为您可以在附加组件管理器中找到的扩展 ID。该 ID 位于该特定扩展页面的 URL 中。如果扩展 ID 是,则asuperuserquestion@superuser
该行应该是:
"C:\Program Files\Mozilla Firefox\firefox.exe" -no-remote -P tempProfile -CreateProfile "tempProfile" "about:config#[email protected]"
我希望这可以解决问题:)