C# 获取系统进程的用户名

时间:2022-12-06 02:38:03 

需要添加对 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#,系统进程,用户名
0
投稿

猜你喜欢

  • 利用Lambda表达式创建新线程案例

    2023-08-26 23:16:00
  • 使用flutter的showModalBottomSheet遇到的坑及解决

    2021-12-07 22:58:29
  • 详解Dagger2在Android开发中的新用法

    2021-08-23 22:39:40
  • c# 基于任务的异步编程模式(TAP)的异常处理

    2023-08-03 15:44:06
  • Java使用Preference类保存上一次记录的方法

    2023-05-08 01:49:14
  • Android启动优化之延时加载的步骤详解

    2023-07-10 20:43:41
  • Android圆形头像拍照后“无法加载此图片”的问题解决方法(适配Android7.0)

    2023-11-18 23:26:56
  • 解决idea中yml文件不识别的问题

    2021-12-07 02:09:28
  • 简单好用的Adapter---ArrayAdapter详解

    2022-09-08 08:33:05
  • C#中控件动态添加事件绑定的时机详解

    2022-05-05 17:40:59
  • SpringBoot整合java诊断工具Arthas解读

    2023-08-07 10:39:03
  • 浅谈java 单例模式DCL的缺陷及单例的正确写法

    2022-04-14 05:58:23
  • Kotlin类与属性及构造函数的使用详解

    2021-06-04 06:04:20
  • c++ 预处理的图灵完备之引言

    2023-02-20 01:37:20
  • MAC算法之消息摘要算法HmacMD5的实现

    2023-02-13 08:03:28
  • Unity3D实现相机跟随控制

    2021-09-03 08:38:01
  • C#实现动态生成静态页面的类详解

    2022-03-25 02:25:29
  • 详解Android中Runtime解决屏幕旋转问题(推荐)

    2022-04-03 03:12:02
  • java实现百度云OCR文字识别 高精度OCR识别身份证信息

    2023-10-24 13:50:37
  • C#实现自定义windows系统日志的方法

    2021-12-17 13:02:31
  • asp之家 软件编程 m.aspxhome.com