読者です 読者をやめる 読者になる 読者になる

clock-up-blog

go-mi-tech

Windowsプロセスの誕生と死滅の緩い監視

C# Windows

必要なので作りました。

概要

プロセスが起動されたタイミング、終了されたタイミングをざっくりと監視する。

f:id:kobake:20150319072750g:plain
www.youtube.com

目的

  • 何(ショートカットやボタン等)を操作したら
  • 何(実行ファイル)が実行されたり
  • 何(実行ファイル)が終了したりするのか

…を実験的に確認したいときにこれを用いる。

仕組み

ガッツリプロセスに張り付いて監視するようなものではなく、定期的にプロセス一覧取得して、前回の一覧との差分を判定する、という感じの緩い監視です。

そんな感じの判定なので、瞬間的に起動・終了するようなプロセスはこのツールでは検出できません。そういうプロセスも検出する仕組みも調べれば実現できるのだろうけど、そんなコアなところにフックするツールを走らせるのは嫌なのでやらない。

不満

  • この程度のことは既存ツールでできそうな気がするけど情報をうまく見つけることができなかった。
  • 頭に「Win」って付けないと Windowsツールだと認識されない時代になってしまったように感じる。仕方なく「Win」と付けている。
  • 「Win」有る無し関係なく、名前がダサい。

気に入っているところ

「tail -f」よろしく Enter キーを受け付けられるようにしてある。(※)
要するに出力の好きなタイミングで改行を挟んで区切りを付けられる。

※これは正確には tail の性質ではなくターミナルの性質なのだが、このように説明するのが最も理解されやすいだろう。


このような性質は本来別レイヤーで実現されるべきものなのであるが、実際のところ挙動が悪くなければどうでもよかろうなのだ。

今後

特にメンテナンスする予定はないが、機能追加するとしたら表示するプロセスの情報を増やすことくらいだろうか。今はプロセスIDと実行ファイル名しか表示していないが、何かしら追加の情報が欲しくなることもあるかもしれない。

});