Image: ESETのバージョンアップ通知を消したい

Windows XPを起動するたびに「製品が古くなっています。」のメッセージが出るんだが、これを非表示にする方法はないだろうか。最新バージョンがXPにインストールできないことは分かりきっている(XPに対応するバージョンは数年前に公開終了した)。そんな方法探ることに時間をかけるよりも、無視すればいいってことは分かっているんだけど。

この通知は「保護しないまま続行する」を2回クリックすれば閉じることができるものの、設定で最初から表示しないようにするという選択肢はなさそうだ。検出エンジン更新完了時に時々表示される(1日1回?)ので、更新を無効にしておけば通知ともおさらばなんだろうけど、それではアンインストールしたも同然だ。

タスクマネージャーとProcess Explorerで調べてみたら、この通知の出所が分かった。通知本体はESETのインストール先に置かれているupgrade.exeという単体のファイルで、ESETの本体プログラムであるekrn.exeから呼び出されているらしい。

Image: Process Explorer

では、upgrade.exeを削除すればいいのかというと、そうはいかない。このファイルはプログラム更新のたびに配置されるようだ。

アプリケーションの実行を制限するような仕組みはWindowsにあったっけと思っていたら、そもそも身近にあるじゃん。ESETに「HIPS」という挙動監視機能が。そこに「お前自身が起動する通知プログラムをブロックせよ」と覚え込ませればいいのさ。

Image: ESET HIPS ルールの編集

結果的にこの方法は上手くいかなかった。全く変化がなかったので理由は不明だが、ESET自身は例外なのか、あるいはアプリケーションがユーザーとしてではなくサービスの上で動いているせいで介入できないのか。

Image: ekrn.exe

ESETインストール先にあるupgrade.exeのアクセス許可エントリを親のエントリから独立させ、SYSTEMユーザーと現在のユーザーから「ファイルの実行」とファイルを上書きするような権限を外してみた(XP Home Editionではこのような設定はできない)。もはややっつけである。←ファイルを更新できないとエラーになりそうなので、上書きは許可した方がいいかもしれない。

Image: アクセス許可エントリ

サービスプログラムの挙動を制限するのはリスクがある。下手すればブルースクリーンの沼にハマるだろう。まあでも、今回のに関して言えば、単なるメッセージプログラムの起動を阻止するだけなので、そういうリスクはなさそう。手動で通知を再現する方法がないので、これが有効な手段か現時点で確認できていないが、もし下のようなメッセージが出るようになってしまっては、バージョンアップ通知と操作上対して変わっていないので意味がない。

Image: アクセス許可がない可能性があります


※コメント欄が表示されない場合はdisqusについてJavascriptが有効であることを確認して下さい。コメントはスパム防止フィルターによる承認制のため、投稿してもすぐに反映されない場合があります。

管理人 : Akamaki (akm)

は、PCとVTuberに夢中になっている電気技術者です。

私はレトロコンピューティングの愛好家ですが、そのようなリグはもう収集していません。

私の活動はトップページで見ることができます。読んでくれてありがとう!