[C#]他プロセスのコマンドライン引数を取得

ダメ元で探したら、Win32_Processから取れるよ、というヒントを見つけた。

Win32_Processってどう使うんだ? と悩んでいたらここにたどり着きました。

さすがにこれだけでは寂しいので、サンプルコード書いたものを続きを読むの中に置いておきます。上記サイトを参考に組ませて頂きました。

先ほどのサイトと同じようにCommandLineを取得するようにしたら例外発生で落ちる。nullチェックを挟むとOKだったのでnullの事もあるみたい。コンパイル時エラーにはSystem.Managementを参照追加。

ついでにコマンドライン引数でPID与えたらそれのみ表示してくれるようにして組んでみた。

しかし、SQL文で取得してくるなんて使い方知らないと書けない。。
直感的なネーミングではなくて違和感がある。

でもWindowsベッタリなプログラムを久しぶりに弄ったらとても楽しかった。

カテゴリー: C#, プログラミング関連 パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です