.NETで実行されているすべてのプロセスを取得する

'ローカルコンピュータ上で実行されているすべてのプロセスを取得
Dim ps As System.Diagnostics.Process() = System.Diagnostics.Process.GetProcesses()
'"machinename"という名前のコンピュータで実行されている
'すべてのプロセスを取得するには次のようにする。
'Dim ps As System.Diagnostics.Process() = _
'    System.Diagnostics.Process.GetProcesses("machinename")

'配列から1つずつ取り出す
For Each p As System.Diagnostics.Process In ps
    Try
        'プロセス名を出力する
        Console.WriteLine("プロセス名: {0}", p.ProcessName)

        'モジュール名
        Console.WriteLine("モジュール名: {0}", p.MainModule.ModuleName)

        'ID
        Console.WriteLine("ID: {0}", p.Id)
        'メインモジュールのパス
        Console.WriteLine("ファイル名: {0}", p.MainModule.FileName)
        '合計プロセッサ時間
        Console.WriteLine("合計プロセッサ時間: {0}", p.TotalProcessorTime)
        '物理メモリ使用量
        Console.WriteLine("物理メモリ使用量: {0}", p.WorkingSet64)
        '.NET Framework 1.1以前では次のようにする
        'Console.WriteLine("物理メモリ使用量: {0}", p.WorkingSet)

        Console.WriteLine()
    Catch ex As Exception
        Console.WriteLine("エラー: {0}", ex.Message)
    End Try
Next

ネタ元