如何在提升的 .NET 应用程序中获取登录用户 SID?
我已经尝试过 WindowsIdentity.GetCurrent()
,这当然会返回提升进程的管理员。据我所知,我可能需要使用 native 方法来执行此操作,任何人都可以提供更优雅的方法吗?
最佳答案
调查 Greg's使用注册表的建议:
我发现以下 key 在提供当前登录用户的信息方面似乎很可靠。此 key 包括显示名称和 SID 等信息。此信息存储在“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI”下
此信息在 Windows 8 上是准确的。我检查过 Windows 7,但包含的信息少得多,例如:没有登录用户 SID。
关于c# - 获取登录用户 SID 而不是提升的用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14916263/