从代码中确定我的进程正在运行的用户

除了好奇心之外,我真的没有理由提出这个问题 – 使用C#,有没有办法从代码中确定我的进程运行的用户是什么? 为了说明使用代码:

static void Main(string[] args) { string userID; //what goes here to fill in this userID variable? Console.out.WriteLine(string.Format("This process is running as {0}.", userID)); } 

 string userID = WindowsIdentity.GetCurrent().Name 

来自MSDN: WindowsIdentity.GetCurrent()和WindowsIdentity.Name

string UserID = Environment.UserName;

有多种方法,具体取决于您运行的应用程序类型。

这是一篇关于使用Thread Principal检查用户数据/授权的文章。

该线程包含其他几种方法,但没有详细说明。