Получить имя пользователя существующего процесса С#

Я пытаюсь получить DomainName\UserName, связанный с процессом в приложении С#. Все остальные данные, которые мне нужно собрать о приложении, я могу получить через метод Process.GetProcessesById(). Возвращаемый объект также содержит свойство для DomainName и UserName, однако это всегда кажется пустой строкой при получении существующего процесса.

Я знаю, что также могу получить эту информацию, запросив объект WMI для имени пользователя, однако есть ли способ получить это, просто выполнив следующие действия?

Process.GetProcessById(1234).StartInfo.UserName

person Lightning77    schedule 19.07.2017    source источник
comment
Я не уверен, что понимаю вопрос. Перефразируя Использование варианта А не работает. Использование варианта B действительно работает. Но есть ли какой-нибудь волшебный способ заставить вариант А работать, несмотря на то, что я уже знаю, что он не работает? (т. е. если есть способ заставить вариант А работать, он не будет просто использовать вариант А)   -  person Damien_The_Unbeliever    schedule 19.07.2017
comment
Думаю, мне просто интересно, нужно ли мне что-то сделать, чтобы заставить его заполнить эти данные, или почему он всегда пуст? Поэтому я могу избежать использования последнего, если это возможно.   -  person Lightning77    schedule 19.07.2017
comment
Связано: принят ответ Марка Беннингфилда на Получение имени пользователя запущенного процесса.   -  person JosefZ    schedule 19.07.2017