none
如何在Win7系統中判斷使用者所屬之使用者群組呢? RRS feed

  • 問題

  • 我在XP SP3的系統下是透過 WindowsIdentity.GetCurrent().Groups 來取得 IdentityReference

    所以能判斷這名使用者所屬的群組為何。

    但在Win7的系統下,我透過同樣的方法,卻無法取得正確的群組。

    以下為我使用的程式碼:

     

    ArrayList list = new ArrayList();
    WindowsIdentity currentUser = WindowsIdentity.GetCurrent();
    foreach (IdentityReference refGroup in currentUser.Groups)
    {
     NTAccount acc = refGroup.Translate(typeof(NTAccount)) as NTAccount;
     list.Add(acc.Value);
    }
    

     

    例如:若使用者所在群組為 Power Users ,則在XP SP3下,會取得一個 NTAccount.Value 為 BUILTIN\Power Users ,

    但在 Win7 下,卻只找得到 BUILTIN\Users 。

    就算我將該使用者加入 Administrators ,依舊只找得到 BUILTIN\Users 。

     

    想請問是否是我疏忽了什麼嗎?

     

    謝謝!

    2011年4月18日 上午 05:38

解答

所有回覆