これまでにこれを達成するために2つの方法を試しました。
最初の方法で を使用System.Diagnostics
しましたが、NotSupportedException
で「機能はリモート マシンではサポートされていません」というメッセージが表示されMainModule
ます。
foreach (Process runningProcess in Process.GetProcesses(server.Name))
{
Console.WriteLine(runningProcess.MainModule.FileVersionInfo.FileDescription);
}
2番目の方法で、使用しSystem.Management
てみましたがDescription
、 のManagementObject
は と同じようName
です。
string scope = @"\\" + server.Name + @"\root\cimv2";
string query = "select * from Win32_Process";
ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, query);
ManagementObjectCollection collection = searcher.Get();
foreach (ManagementObject obj in collection)
{
Console.WriteLine(obj["Name"].ToString());
Console.WriteLine(obj["Description"].ToString());
}
リモートマシンで実行中のプロセスの説明を取得するためのより良い方法を知っている人はいますか?