Dizin Hizmetleri ve Visual C# kullanarak, yerel sistem için bir kullanıcı ekleme hakkında

Makale çevirileri Makale çevirileri
Makale numarası: 306273 - Bu makalenin geçerli olduğu ürünleri görün.
Hepsini aç | Hepsini kapa

Bu Sayfada

Özet

Bu adım adım makalede, bir kullanıcı, yerel sistem ve bir grup eklemek için DirectoryServices ad alanının nasıl kullanıldığını gösterir.

Gereksinimler

  • Microsoft Windows XP, Windows 2000 veya Windows NT 4.0
  • Visual C#

Örnek oluşturma

  1. Visual Studio .NET 2003, Visual Studio 2005 veya Visual Studio 2008'i başlatın ve sonra da yeni bir Visual C# konsol uygulaması) projesi oluşturun.
  2. Solution Explorer'da (Çözüm Gezgini), Başvurular ' ı sağ tıklatın ve sonra Add Reference</a1>'ı tıklatın.
  3. System.DirectoryServices.dll derlemesine ekleyin.
  4. Class1.cs dosyasındaki kodu aşağıdaki kodla değiştirin.

    Not Microsoft Visual C# 2005 veya Microsoft Visual C# 2008 Class1.cs dosya program.cs dosyası tarafından değiştirilir.
    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. Derleme ve sonra projeyi çalıştırın.
  6. Windows 2000 tabanlı bir bilgisayarda hesabı oluşturuldu ve Konuk grubuna eklenen doğrulamak için şu adımları izleyin:

    1. Başlat menüsünden Programlar ' ın üzerine gelin, Yönetimsel Araçlar ' ın üzerine gelin ve sonra Bilgisayar Yönetimi ' ni tıklatın.
    2. Yerel Kullanıcılar ve gruplar düğümünü için bu seçeneği tıklatın. Yeni hesabın kullanıcıları düğümündeki yan? s?ra Konuk grubunun düğümündeki görünmelidir.
    Windows XP tabanlı bir bilgisayarda hesabı oluşturuldu ve Konuk grubuna eklenen doğrulamak için şu adımları izleyin:
    1. Başlat menüsünden Denetim Masası ' nı tıklatın.
    2. Kullanıcı hesapları ' nı çift tıklatın. Yeni kullanıcı hesabının Kullanıcı hesapları</a1> iletişim kutusunda görünmesi gerekir.
    ÖNEMLI Not: sınama işlemini tamamladıktan sonra yeni oluşturulan kullanıcı hesabının sistemden kalkmasını.

Kod açıklaması

Yeni bir dizin girdisi oluştur

Bu örnekte, dizin girdisi oluşturduğunuzda, Microsoft Windows NT, Windows 2000 veya Windows XP sistem çalıştığı varsayılır. Not için DirectoryEntry kurucu geçirilen dize ile başlayan "WinNT: / /". Dizin Hizmetleri, ayrıca başka üçüncü taraf işletim sistemlerinde çalıştırabilirsiniz.
DirectoryEntry AD = new DirectoryEntry("WinNT://" + SystemInformation.ComputerName + ",computer");
				

Dizin ağacında için giriş dizini ekleme

Aşağıdaki kod, Active Directory ağacına bir DirectoryEntry türü kullanıcıTestUser1 değeriyle ekler.
DirectoryEntry NewUser = AD.Children.Add("TestUser1", "user");
				

Parola ve yeni kullanıcı hesabının açıklaması

Aşağıdaki kod DirectoryEntry nesnesinin SetPassword ve PUT yöntemi çağırmak için ınvoke yöntemi çağırır. Bu parolayı ayarlar ve kullanıcı hesabı için bir açıklama atar. Bu kod, de değişiklikleri kaydetmek için CommitChanges yöntemini çağırır.
NewUser.Invoke("SetPassword", new object[] {"#12345Abc"});
NewUser.Invoke("Put", new object[] {"Description", "Test User from .NET"});
NewUser.CommitChanges();
				

Hesabı bir gruba ekleyin...

Bir gruba hesap eklemek için <a0></a0>, aşağıdaki adımları izleyin:
  1. DirectoryEntry türde bir değişken tanımlayın.
  2. Üyenin değişken doldurmak için alt <a0>ActiveDirectory</a0> sınıfının <a2>Bul</a2> yöntemini çağırın. Bu durumda Guest hedef arama grubudur. Bu kod grubu bulunan belirlemek için Bul yöntemi döndüren değerini sınar. Grup bulunursa, yeni kullanıcı hesabının bu gruba eklenir.
DirectoryEntry grp;
grp = AD.Children.Find("Guests", "group");
if (grp != null) {grp.Invoke("Add", new object[] {NewUser.Path.ToString()});}
				

SORUN GİDERME

Bir kullanıcı hesabı oluşturmak için yeterli ayrıcalıkları olmayan kod çalıştırmayı denerseniz, bu makaledeki kod başarısız olur. Kodu başarıyla tamamlanması için şu anda oturum açmış kullanıcının Administrators grubunun üyesi olmanız veya kullanıcı, kullanıcı hesapları oluşturmak belirli izinlerinin olması gerekir.

Özellikler

Makale numarası: 306273 - Last Review: 11 Aralık 2006 Pazartesi - Gözden geçirme: 2.4
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Visual C# 2008 Express Edition
  • Microsoft Visual C# 2005
  • Microsoft Visual C# .NET 2002 Standard Edition
Anahtar Kelimeler: 
kbmt kbhowtomaster KB306273 KbMttr
Machine-translated Article
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:306273

Geri Bildirim Ver

 

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