我正在尝试在 Win 7 上查找当前登录用户的 SID。我正在使用
string _CurrentUser = System.Security.Principal.WindowsIdentity.GetCurrent().User.Value.ToString();
当我在控制台应用程序中运行它时,我得到用户的 SID 为“S-1-5-21-670676956-2645971461-1681047478-500”,但是当我将上述行放在 Windows 服务中时,我得到一个不同的 SID,即“S-1-5-18” 我了解 Windows 服务以不同的帐户运行。如何在 Windows 服务中获取用户的 SID,与在控制台应用程序中获取的相同?
此外,当我在 Win XP 中运行相同的代码时,Windows 服务和控制台应用程序会提供与 Win 7 不同的相同 SID。