Jak přidat uživatele do místní systém pomocí adresářových služeb a Visual C#

Překlady článku Překlady článku
ID článku: 306273 - Produkty, které se vztahují k tomuto článku.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Souhrn

Tento podrobný článek popisuje, jak použít DirectoryServices obor názvů přidat uživatele do místní systém a skupiny.

Požadavky

  • Systém Microsoft Windows XP, Windows 2000 nebo Windows NT 4.0
  • Visual C#

Vytvořit vzorek

  1. Spusťte aplikaci Visual Studio.NET 2003, Microsoft Visual Studio 2005 nebo Microsoft Visual Studio 2008 a potom vytvořit nový projekt aplikace Visual C# konzolové aplikace.
  2. V aplikaci Solution Explorer klepněte pravým tlačítkem myši Odkazya klepněte na tlačítko Přidat odkaz.
  3. Přidat odkaz na System.DirectoryServices.dll sestavení.
  4. Nahraďte kód v souboru modulu Class1.cs následujícím kódem.

    Poznámka: V aplikaci Microsoft Visual C# 2005 nebo Microsoft Visual C# 2008 soubor modulu Class1.cs nahrazuje soubor Program.cs.
    using System;
    using System.DirectoryServices;
    
    class Class1
    {
        static void Main(string[] args)
        {
        try
            {
    	 DirectoryEntry AD = new DirectoryEntry("WinNT://" + 
    	                     Environment.MachineName + ",computer");
    	 DirectoryEntry NewUser = AD.Children.Add("TestUser1", "user");
    	 NewUser.Invoke("SetPassword", new object[] {"#12345Abc"});
    	 NewUser.Invoke("Put", new object[] {"Description", "Test User from .NET"});
    	 NewUser.CommitChanges();
    	 DirectoryEntry grp;
    
    	 grp = AD.Children.Find("Guests", "group");
    	 if (grp != null) {grp.Invoke("Add", new object[] {NewUser.Path.ToString()});}
    	 Console.WriteLine("Account Created Successfully");
    	 Console.ReadLine();
    	}
        catch (Exception ex)
    	{
    	 Console.WriteLine(ex.Message);
    	 Console.ReadLine();
    
    	}
        }
    }
    					
  5. Kompilovat a potom spusťte projektu.
  6. V počítači se systémem Windows 2000 ověřte, že účet byl vytvořen a přidán do skupiny Guest, postupujte takto:

    1. Od Spustit příkaz Programy, přejděte na příkaz Nástroje pro správua klepněte na tlačítko Správa počítače.
    2. Rozbalte kliknutím Místní uživatelé a skupiny uzel. Nový účet by měl být pod Uživatelé uzel, stejně jako pod uzlem Host skupina.
    V počítači se systémem Windows XP ověřte, že účet byl vytvořen a přidán do skupiny Guest, postupujte takto:
    1. Od Spustit nabídky, klepněte na tlačítko Ovládací panely.
    2. Poklepejte na položku Uživatelské účty. Nový uživatelský účet, zobrazí se v Uživatelské účty Dialogové okno.
    DŮLEŽITÁ POZNÁMKA: Odeberte nově vytvořený uživatelský účet ze systému po dokončení testování.

Vysvětlení kódu

Vytvořit novou položku adresáře

V tomto příkladu vytvoříte položku adresáře, předpokládá se, že je systém Microsoft Windows NT, Windows 2000 nebo Windows XP. Všimněte si, že řetězec, který je předán DirectoryEntry Konstruktor začíná "WinNT: / /". Můžete také spustit adresářové služby v jiných operačních systémech třetích stran.
DirectoryEntry AD = new DirectoryEntry("WinNT://" + SystemInformation.ComputerName + ",computer");
				

Přidat položku adresáře do adresářového stromu

Následující kód přidá DirectoryEntry Typ uživatel s hodnotou TestUser1 aby Služba Active Directory strom.
DirectoryEntry NewUser = AD.Children.Add("TestUser1", "user");
				

Nastavit popis pro nový uživatelský účet a heslo

Následující kód volání Vyvolání metoda vyvolat SetPassword a Vložit metody DirectoryEntry objekt. Toto nastaví heslo a přiřadí popis uživatelského účtu. Tento kód vyžaduje rovněž CommitChanges Metoda změny uložte.
NewUser.Invoke("SetPassword", new object[] {"#12345Abc"});
NewUser.Invoke("Put", new object[] {"Description", "Test User from .NET"});
NewUser.CommitChanges();
				

Přidání účtu do skupiny

Chcete-li přidat účet do skupiny, postupujte takto:
  1. Definovat proměnné typu DirectoryEntry.
  2. Volání Najít Metoda Děti člen Službě Active Directory Třída naplnit proměnné. V tomto případě skupiny Host je cíl hledání. Tento kód testuje hodnoty, Najít Metoda vrátí k určení, pokud bylo zjištěno skupiny. Pokud je nalezena skupina, nový uživatelský účet je přidán do skupiny.
DirectoryEntry grp;
grp = AD.Children.Find("Guests", "group");
if (grp != null) {grp.Invoke("Add", new object[] {NewUser.Path.ToString()});}
				

Poradce při potížích

Kód v tomto článku se nezdaří, pokud se pokusíte spustit kód bez dostatečná oprávnění k vytvoření uživatelského účtu. Pro kód úspěšně dokončena aktuálně přihlášený uživatel členem skupiny Administrators nebo má konkrétní oprávnění, která uživateli vytvořit uživatelské účty.

Vlastnosti

ID článku: 306273 - Poslední aktualizace: 18. května 2011 - Revize: 4.0
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft Visual C# 2008 Express Edition
  • Microsoft Visual C# 2005
  • Microsoft Visual C# .NET 2002 Standard Edition
Klíčová slova: 
kbhowtomaster kbmt KB306273 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:306273

Dejte nám zpětnou vazbu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com