2010-12-17 15 views
0

Microsoft .NETプログラムがWindowsコンピュータで実行されているかどうかを確認することはできますか?.NETプログラムが実行されているかどうかを確認する方法

+0

あなたは、名前またはコンピュータで実行されているプログラムを知っている特定のプログラムを意味しますか.Netですか? –

+0

あなたのプログラムか.netプログラムですか? – jgauffin

+0

Windows上で動作するのか、それとも全く動作するのか? – Dykam

答えて

2

は、.NETへの明示的なプロセス/アプリケーションを識別しようとしている場合は、.NETフレームワークに固有のプロセス内の依存/モジュールを探してください。

以下は私がmscorlibを使用していることです。このプロセスが.NETフレームワークに依存していることを示すヒントとして、これが最初に思い浮かぶものです。例えば

 var processes = Process.GetProcesses(); 
     foreach (var process in processes) 
     { 
      try 
      { 
       foreach (var module in process.Modules) 
       { 
        if (module.ToString().Contains("mscorlib")) 
        { 
         Console.WriteLine(process); 
         break; 
        } 
       } 
      } 
      catch { // Access violations } 
     } 

これは、いくつかのプロセスがそのモジュールがアクセス制限のために列挙することはできませんが、あなたはそれを実行した場合、あなたはそれが戻っ.NET依存プロセスを引っ張ってくることがわかりますように、弾丸の証拠はありません。おそらく、それはあなたに正しい方向に考えさせる良い出発点を与えるでしょう。

2

次の例は、指定された名前のプロセスが1つ以上実行されている場合にtrueを返します。

public bool IsProcessRunning(string processName) 
    { 
     return Process.GetProcessesByName(processName).Length != 0; 
    } 
1

チェックアウトCorPublishLibrary - あなたがマシン上で実行されているすべてのマネージコードのプロセスを調べることができますライブラリ。

alt text

関連する問題