Windows タスク スケジューラを使用して Firefox 拡張機能を無効にする方法

Windows タスク スケジューラを使用して Firefox 拡張機能を無効にする方法

タスク スケジューラを設定して、Windows を夜間にダーク モードに、昼間にライト モードに設定するなど、時間帯に応じてさまざまなタスクを切り替えるようにしました。この設定に従って、Firefox の Dark Reader 拡張機能を昼間に自動的に無効にし、夜間に有効にしたいと思います。

タスク スケジューラ (または同様の自動化された方法) を使用して、Dark Reader などの特定の Firefox 拡張機能を無効にする方法はありますか?

答え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 を閉じた状態で行う必要があります。

ファイルをテキスト編集することを提案するのではなく、拡張機能が有効になっているときのファイルと、拡張機能が無効になっているときのファイルの 2 つのコピーを保持する方が簡単な解決策になります。

2つのスケジュールされたタスクは、Firefoxがコマンドを使用して実行されている場合はFirefoxを強制終了します。タスクキル 次のように :

taskkill /im firefox.exe /f

次に、必要なバージョンのをextensions.jsonプロファイル フォルダーにコピーします。スケジュールされたタスクで Firefox を再起動することは推奨されません。

Firefox を強制終了するのがあまりにも危険である場合は、スケジュールされたタスクが実行されてからしばらく経ってから、手動で再起動する必要があります。

Dark Reader 以外の拡張機能をインストール、アンインストール、または何らかの方法で状態を変更するたびに、 の 2 つのバージョンを再作成する必要がありますextensions.json 。これが問題になる場合は、ファイルをその場で変更する別のソリューションを実装できます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選択します。
  • 「OK」をクリックしてタスクを保存します。

{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]"

これで問題が解決することを願っています :)

関連情報