Windowsでタスクトレイアイコンを持つプログラムが強制終了した場合、タスクトレイでアイコンが残ったままになります。
そのアイコンの上でマウスを動かせば消えますが、TrayIconBuster を使えばアプリから消すことができます。
GitHub – erik434/TrayIconBuster: Command-line program to clean up zombie tray icons
ただし、 TrayIconBuster はソースコードしか公開されていないので、そのビルド方法を説明します。
ビルドはC#のソースに対しておこないますが、下記記事のとおり、Windowsの標準機能でできます。
Windows10の標準機能でC#のソースコードをビルドする | パソコン鳥のブログ
まず、 TrayIconBuster のソースを取得します。
GitHub – erik434/TrayIconBuster: Command-line program to clean up zombie tray icons で、[Code]ボタンの箇所で Download Zip を選択します。
ダウンロードしたzipファイルを展開します。
展開したファイルの Program.cs、TrayIconBuster.cs の内容で、Utilities.Log($” となっている箇所を、$ を削除して Utilities.Log(” とします。
Program.cs に1か所、 TrayIconBuster.cs に3か所あります。
コマンドプロンプトを開き、Program.cs、TrayIconBuster.cs の場所で、次を実行します。
C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild /p:DebugSymbols=false /p:DebugType=None /t:Rebuild /p:Configuration=Release
ディレクトリ bin\release ができ、その中に TrayIconBuster(.exe) が出来ています。
この TrayIconBuster を実行すれば、タスクトレイアイコンに残ったままのアイコンが消されます。
コメント
以前同じようなことを思い、正にカーソルでなぞるという子供だましのものを
作りました。
今回、このブログを見てデスクトップの表示とタスクトレイのクリアを一気に
行う実行ファイルを作ることができました。
CSファイルは初めてだったので、ちょっと苦労しましたが。
本当に有難うございました。
コメントありがとうございます。お役に立てて何よりです