Πώς μπορείτε να προσθέσετε ένα χρήστη στο τοπικό σύστημα, χρησιμοποιώντας τις υπηρεσίες καταλόγου και Visual C#

Μεταφράσεις άρθρων Μεταφράσεις άρθρων
Αναγν. άρθρου: 306273 - Δείτε τα προϊόντα στα οποία αναφέρεται το συγκεκριμένο άρθρο.
Ανάπτυξη όλων | Σύμπτυξη όλων

Σε αυτήν τη σελίδα

Περίληψη

Αυτό το άρθρο βήμα προς βήμα σας δείχνει τον τρόπο χρήσης τουDirectoryServicesχώρος ονομάτων για να προσθέσετε ένα χρήστη στο τοπικό σύστημα και μια ομάδα.

ΑΠΑΙΤΗΣΕΙΣ

  • Microsoft Windows XP, Windows 2000 ή Windows NT 4.0
  • Το Visual C#

Δημιουργία του δείγματος

  1. Start Microsoft Visual Studio .NET 2003, Microsoft Visual Studio 2005, or Microsoft Visual Studio 2008, and then create a new Visual C# Console Application project.
  2. Στην Εξερεύνηση των λύσεων, κάντε δεξιό κλικΑναφορές, και στη συνέχεια κάντε κλικ στο κουμπίΠροσθήκη αναφοράς.
  3. Προσθέστε μια αναφορά για τοSystem.DirectoryServices.dllη συγκρότηση.
  4. Replace the code in the Class1.cs file with the following code.

    ΣΗΜΕΙΩΣΗIn Microsoft Visual C# 2005 or Microsoft Visual C# 2008, the Class1.cs file is replaced by the Program.cs file.
    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. Compile and then run the project.
  6. Follow these steps on a Windows 2000-based computer to verify that the account was created and added to the Guest group:

    1. Από τοStartμενού, σημείοΠρογράμματα (Programs), τοποθετήστε το δείκτηΕργαλεία διαχείρισης, και στη συνέχεια κάντε κλικ στο κουμπίΔιαχείριση Υπολογιστή (Computer Management).
    2. Κάντε κλικ για να αναπτύξετε τοΤοπικοί λογαριασμοί Users και Groups (Local Users and Groups)κόμβος. The new account should appear under theΧρήστες (Permissions for Users)node, as well as under the node for theεπισκέπτηςΌμιλος.
    Follow these steps on a Windows XP-based computer to verify that the account was created and added to the Guest group:
    1. Από τοStartμενού, κάντε κλικ στο κουμπίΟ πίνακας ελέγχου.
    2. Διπλό κλικΛογαριασμοί χρηστών (User Accounts). The new user account should appear in theΛογαριασμοί χρηστών (User Accounts)παράθυρο διαλόγου.
    ΣΗΜΑΝΤΙΚΉ ΣΗΜΕΊΩΣΗ: Remove the newly created user account from the system after you finish testing.

Code Explanation

Create a New Directory Entry

When you create the directory entry in this sample, it is assumed that the system is running Microsoft Windows NT, Windows 2000, or Windows XP. Note that the string that is passed to theDirectoryEntryconstructor begins with "WinNT://". You can also run Directory Services on other third-party operating systems.
DirectoryEntry AD = new DirectoryEntry("WinNT://" + SystemInformation.ComputerName + ",computer");
				

Add the Directory Entry to the Directory Tree

The following code adds aDirectoryEntryof typeΧΡΗΣΤΗΣwith the value ofTestUser1Για να τοΥπηρεσία καταλόγου Active Directoryδέντρο.
DirectoryEntry NewUser = AD.Children.Add("TestUser1", "user");
				

Set the Password and Description for the New User Account

The following code calls theInvokemethod to invoke theSetPasswordANDPutmethods of theDirectoryEntryObject. This sets the password and assigns a description to the user account. This code also calls theCommitChangesmethod to save the changes.
NewUser.Invoke("SetPassword", new object[] {"#12345Abc"});
NewUser.Invoke("Put", new object[] {"Description", "Test User from .NET"});
NewUser.CommitChanges();
				

Add the Account to a Group

To add the account to a group, follow these steps:
  1. Define a variable of typeDirectoryEntry.
  2. Call theΕύρεσηη μέθοδος τουChildrenμέλος τουActiveDirectoryclass to populate the variable. In this case, the Guest group is the target of the search. This code tests the value that theΕύρεσηmethod returns to determine if the group has been found. If the group is found, the new user account is added to the group.
DirectoryEntry grp;
grp = AD.Children.Find("Guests", "group");
if (grp != null) {grp.Invoke("Add", new object[] {NewUser.Path.ToString()});}
				

ΑΝΤΙΜΕΤΩΠΙΣΗ ΠΡΟΒΛΗΜΑΤΩΝ

The code in this article fails if you try to run the code without the sufficient privileges to create a user account. For the code to complete successfully, the currently logged on user must be a member of the Administrators group or have specific permissions that allow the user to create user accounts.

Ιδιότητες

Αναγν. άρθρου: 306273 - Τελευταία αναθεώρηση: Δευτέρα, 20 Δεκεμβρίου 2010 - Αναθεώρηση: 2.0
Οι πληροφορίες σε αυτό το άρθρο ισχύουν για:
  • Microsoft Visual C# 2008 Express Edition
  • Microsoft Visual C# 2005
  • Microsoft Visual C# .NET 2002 Standard Edition
Λέξεις-κλειδιά: 
kbhowtomaster kbmt KB306273 KbMtel
Μηχανικά μεταφρασμένο
ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο είναι προϊόν λογισμικού μηχανικής μετάφρασης της Microsoft και όχι ανθρώπινης μετάφρασης. Η Microsoft σάς προσφέρει άρθρα που είναι προϊόντα ανθρώπινης αλλά και μηχανικής μετάφρασης έτσι ώστε να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής Βάσης μας στη δική σας γλώσσα. Ωστόσο, ένα άρθρο που έχει προκύψει από μηχανική μετάφραση δεν είναι πάντα άριστης ποιότητας. Ενδέχεται να περιέχει λεξιλογικά, συντακτικά ή γραμματικά λάθη, όπως ακριβώς τα λάθη που θα έκανε ένας μη φυσικός ομιλητής επιχειρώντας να μιλήσει τη γλώσσα σας. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες της. Επίσης, η Microsoft πραγματοποιεί συχνά ενημερώσεις στο λογισμικό μηχανικής μετάφρασης.
Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη:306273

Αποστολή σχολίων

 

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