Как получить имя пользователя процесса как в диспетчере задач? - C#

Узнай цену своей работы

Формулировка задачи:

Пробовал через Proccess.StartInfo.UserName, но там пусто, потом через
string[] propertiesToSelect = new[] { "Handle", "ProcessId" };
 
                            SelectQuery processQuery = new SelectQuery("Win32_Process", "Name = '" + Processes[n].ProcessName + "'", 
                            propertiesToSelect);
                            string user = "";
                            using (ManagementObjectSearcher searcher = new ManagementObjectSearcher(processQuery))
                            using (ManagementObjectCollection processes = searcher.Get())
                            foreach (ManagementObject process in processes)
                            {
                                object[] outParameters = new object[2];
                                uint result = (uint)process.InvokeMethod("GetOwner", outParameters);
 
                                if (result == 0)
                                {
                                    user = (string)outParameters[0];
                                    break;
                                }
}
Опять пустые строки шлёт. Запускаю от имени админа в манифесте.

Решение задачи: «Как получить имя пользователя процесса как в диспетчере задач?»

textual
Листинг программы
SelectQuery processQuery = new SelectQuery("Win32_Process", "Name = '" + Processes[n].ProcessName + ".exe'",  propertiesToSelect);

Оцени полезность:

10   голосов , оценка 3.4 из 5
Похожие ответы