ホームページ  >  記事  >  バックエンド開発  >  C# システム プロセスのユーザー名を取得する

C# システム プロセスのユーザー名を取得する

黄舟
黄舟オリジナル
2016-12-22 13:58:451785ブラウズ

System.Management.dll への参照を追加する必要があります

using System.Diagnostics; 
using System.Management;static void Main(string[] args) 
{ 
foreach (Process p in Process.GetProcesses()) 
{ 
Console.Write(p.ProcessName); 
Console.Write("----"); 
Console.WriteLine(GetProcessUserName(p.Id)); 
} 
Console.ReadKey(); 
}private static string GetProcessUserName(int pID) 
{ 
string text1 = null; 
SelectQuery query1 = new SelectQuery("Select * from Win32_Process WHERE processID=" + pID); 
ManagementObjectSearcher searcher1 = new ManagementObjectSearcher(query1); 
try 
{ 
foreach (ManagementObject disk in searcher1.Get()) 
{ 
ManagementBaseObject inPar = null; 
ManagementBaseObject outPar = null; 
inPar = disk.GetMethodParameters("GetOwner"); 
outPar = disk.InvokeMethod("GetOwner", inPar, null); 
text1 = outPar["User"].ToString(); 
break; 
} 
} 
catch 
{ 
text1 = "SYSTEM"; 
} 
return text1; 
}

上記は、システム プロセスのユーザー名を取得するための C# の内容です。さらに関連する内容については、PHP 中国語 Web サイト (www. php.cn)!


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。