Как найти учетные данные, на которых запущен Diagnostic.Process

1

Как узнать в веб-приложении С# visual studio 2012, на котором установлены учетные данные /Identity System.Diagnostic.Process, программно?

  • 0
    Вы начали процесс?
  • 0
    Вы можете сделать это с помощью WMI
Показать ещё 3 комментария
Теги:
visual-studio-2012

1 ответ

1
Лучший ответ

Предполагая, что вы добавили ссылку на System.Management и знаете, какой идентификатор процесса вам интересен, вы можете использовать этот код:

public void GetProcessOwner(int processId)
{
    string query = "SELECT * FROM Win32_Process WHERE ProcessId = " + processId;
    using (var searcher = new ManagementObjectSearcher("root\\CIMV2", query))
    {
        foreach (var queryObj in searcher.Get().OfType<ManagementObject>())
        {
            ManagementBaseObject outParams = queryObj.InvokeMethod("GetOwner", null, null);
            Console.WriteLine("{0} is owned by {1}\\{2}", queryObj["Name"], outParams["Domain"], outParams["User"]);
        }
    }
 }

Ещё вопросы

Сообщество Overcoder
Наверх
Меню