none
如何用c#移除本機administrators群組內帳號 RRS feed

  • 問題

  • 問題:我需要寫一個主控台應用程式,判斷User是否在Administrators群組裡,若在裡面,就將它移除。

    我有找過書及網路,但均只寫到使用user.IsInRole("Administrator")來判斷是否為Administrator ,找不到如何 移除的方法

    環境:vs2008開發(c#) 在 xp上執行

    請知道的大大們,給我個方向去找或是類別在那裡,就可以,Thanks

    2010年6月22日 上午 01:49

解答

  • Howto: (Almost) Everything In Active Directory via C#

    http://www.codeproject.com/KB/system/everythingInAD.aspx

    參考以上,是否有您要的呢...

    • 已標示為解答 CCdog 2010年6月22日 上午 07:07
    2010年6月22日 上午 02:18
  • hi

    嘗試看看

      /// <summary>
            /// 從群組中移除使用者
            /// </summary>
            /// <param name="domain">ldap server</param>
            /// <param name="user">帳號</param>
            /// <param name="group">群組名稱</param>
            /// <returns></returns>
            public static string RemoveUserfromGroup(string domain, string user, string group)
            {
                
                    DirectoryEntry entry = new DirectoryEntry(domain);
                    DirectoryEntry obGroup = entry.Children.Find(group, "group");//找群組
                    DirectoryEntry obUser = entry.Children.Find(user, "User");//找使用者
                    obGroup.Invoke("Remove", obUser.Path.ToString());            
                    obGroup.CommitChanges();
                    obUser.Close();
                    obGroup.Close();
                    entry.Close();
                    return "成功";
                
              }



    • 已標示為解答 CCdog 2010年6月22日 上午 07:07
    2010年6月22日 上午 02:47

所有回覆

  • Howto: (Almost) Everything In Active Directory via C#

    http://www.codeproject.com/KB/system/everythingInAD.aspx

    參考以上,是否有您要的呢...

    • 已標示為解答 CCdog 2010年6月22日 上午 07:07
    2010年6月22日 上午 02:18
  • hi

    嘗試看看

      /// <summary>
            /// 從群組中移除使用者
            /// </summary>
            /// <param name="domain">ldap server</param>
            /// <param name="user">帳號</param>
            /// <param name="group">群組名稱</param>
            /// <returns></returns>
            public static string RemoveUserfromGroup(string domain, string user, string group)
            {
                
                    DirectoryEntry entry = new DirectoryEntry(domain);
                    DirectoryEntry obGroup = entry.Children.Find(group, "group");//找群組
                    DirectoryEntry obUser = entry.Children.Find(user, "User");//找使用者
                    obGroup.Invoke("Remove", obUser.Path.ToString());            
                    obGroup.CommitChanges();
                    obUser.Close();
                    obGroup.Close();
                    entry.Close();
                    return "成功";
                
              }



    • 已標示為解答 CCdog 2010年6月22日 上午 07:07
    2010年6月22日 上午 02:47