【勝利の女神NIKKE】メガニケPC版のtbs_browser.exe監視プログラム公開!【パソコン版】

TBS_BROWSER キラー

こんにちは

今回はメガニケのパソコン版で勝手に起動して

CPU使用率を数十パーセントも占有するプログラム

"tbs_browser.exe"の監視プログラムを公開したいと思います。

 

監視プログラムと言っても機能は単純で、

10秒おきにプロセスを監視して

"tbs_browser.exe"が起動していたら自動で閉じる

というだけの機能です。

不具合

メガニケのランチャーが起動している状態で

本プログラムを起動させておくと、

"tbs_browser.exe"を必要とするランチャーによって再度起動される為

tbs_browser が閉じたり開いたりを繰り返してランチャーの動作が不安定になります。

ランチャーを終了させるか、必要な時にプログラムを起動させるようにしてください。

動作環境

Windows10で動作確認しました。

Pythonを使ったプログラムなのでmacでもプログラムは動くと思います。

 

事前準備

  • Pythonをインストール(環境変数が設定されている事を確認)
  • プロセスを監視するモジュール「psutil」をインストール
  • tbs_browser_killer.py と tbs_browser_killer.bat の2つのファイルを用意
「psutil」はpythonを拡張するためのモジュールです

これが無いとプロセスを監視できないのでプログラムが動作しません。

Windowsのコマンドプロントを起動(win+Rでファイル名を指定して実行、"cmd"を入力してエンター)

コマンドプロントに"pip install psutil"と入力してpsutilをインストール

エラーが出るならPython環境変数を確認してください

tbs_browser_killer.py と tbs_browser_killer.bat の準備

.pyファイルと.batファイルはご自身で作ってください。

メモ帳にプログラムをコピーして名前を付けて保存でファイルの種類をすべてのファイルにしてファイル名も拡張子ごとコピーすれば作れます。

※ .bat ファイルはWindowsPython起動用ファイルです。mac等のOSの場合はご自分でお調べになって作ってください。

 

↓プログラムの本体です

tbs_browser_killer.py

import psutil
import time

while True:
    tbs_running = False
    for proc in psutil.process_iter(['pid', 'name']):
        if proc.info['name'] == 'tbs_browser.exe':
            tbs_running = True
            print(f"Process ID: {proc.info['pid']}")
            proc.kill()
            print("Killed tbs_browser")
            break
    
    if not tbs_running:
        print("tbs_browser.exe not found")
    
    time.sleep(10)

 

Windows用の py ファイル起動ファイルです

tbs_browser_killer.bat

@echo off
python tbs_browser_killer.py
pause

使用方法

  1. tbs_browser_killer.bat をダブルクリックで起動させます
  2. メガニケを終了した時に tbs_browser.exe が起動してプロセスに残っていたら自動で終了します
  3. tbs_browser_killer.bat を起動させたコマンドプロントに「Killed tbs_browser」と表示されたら成功です
  4. 「tbs_browser.exe not found」と表示されている場合は tbs_browser.exe は起動していません
  5. 任意のタイミングでコマンドプロントを終了させてください

 

最後に

簡単なプログラムなのでソースコードを公開しました。

監視時間とかも簡単に変更できますので好きなようにしてください。

二次配布は可能ですが有償での配布はしないでください。

参考元としてこちらにリンクしていただければ幸いです。

これらのプログラムによる損害に関して当方は一切の責任を負いません。