Bạn hiện đang ngoại tuyến, hãy chờ internet để kết nối lại

Làm thế nào để thêm người dùng vào hệ thống cục bộ bằng cách sử dụng dịch vụ thư mục và Visual C#

QUAN TRỌNG: Bài viết này được dịch bằng phần mềm dịch máy của Microsoft chứ không phải do con người dịch. Microsoft cung cấp các bài viết do con người dịch và cả các bài viết do máy dịch để bạn có thể truy cập vào tất cả các bài viết trong Cơ sở Kiến thức của chúng tôi bằng ngôn ngữ của bạn. Tuy nhiên, bài viết do máy dịch không phải lúc nào cũng hoàn hảo. Loại bài viết này có thể chứa các sai sót về từ vựng, cú pháp hoặc ngữ pháp, giống như một người nước ngoài có thể mắc sai sót khi nói ngôn ngữ của bạn. Microsoft không chịu trách nhiệm về bất kỳ sự thiếu chính xác, sai sót hoặc thiệt hại nào do việc dịch sai nội dung hoặc do hoạt động sử dụng của khách hàng gây ra. Microsoft cũng thường xuyên cập nhật phần mềm dịch máy này.

Nhấp chuột vào đây để xem bản tiếng Anh của bài viết này:306273
Đối với một Microsoft Visual Basic.NET Phiên bản của bài viết này, xem 306271.

Bài viết này đề cập đến Microsoft sau.Không gian tên thư viện lớp của NET Framework:
  • System.DirectoryServices

TRONG TÁC VỤ NÀY

TÓM TẮT
Bài viết từng bước này cho bạn thấy làm thế nào để sử dụng các DirectoryServices không gian tên để thêm người dùng vào hệ thống địa phương và một nhóm.

back to the top

Yêu cầu

  • Microsoft Windows XP, Windows 2000 hoặc Windows NT 4.0
  • Visual C#
back to the top

Tạo mẫu

  1. Bắt đầu Microsoft Visual Studio.NET 2003, Microsoft Visual Studio 2005, hay Microsoft Visual Studio 2008, và sau đó tạo ra một dự án Visual C# giao diện điều khiển ứng dụng mới.
  2. Trong giải pháp Explorer, bấm chuột phải vào Tham khảo, sau đó bấm Thêm tài liệu tham khảo.
  3. Thêm một tham chiếu đến các System.DirectoryServices.dll gan y Cynulliad.
  4. Thay thế mã trong tập tin Class1.cs với đoạn mã sau.

    Chú ý Trong Microsoft Visual C# 2005 hoặc Microsoft Visual C# 2008, các tập tin Class1.cs được thay thế bởi các tập tin 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. Biên dịch và sau đó chạy các dự án.
  6. Làm theo các bước trên Windows 2000 dựa trên một máy tính để xác minh rằng các tài khoản được tạo ra và thêm vào nhóm khách:

    1. Từ các Bắt đầu trình đơn, điểm đến Chương trình, điểm đến Công cụ quản trị, sau đó bấm Quản lý máy tính.
    2. Nhấn vào đây để mở rộng các Nhóm và người dùng cục bộ nút. Các tài khoản mới sẽ xuất hiện dưới các Người dùng nút, cũng như theo nút cho các Khách mời nhóm.
    Làm theo các bước trên một máy tính Windows XP dựa trên để xác minh rằng các tài khoản được tạo ra và thêm vào nhóm khách:
    1. Từ các Bắt đầu trình đơn, nhấp vào Bảng điều khiển.
    2. Bấm đúp Trương mục người dùng. Trương mục người dùng mới sẽ xuất hiện trong các Trương mục người dùng hộp thoại.
    LƯU Ý QUAN TRỌNG: Loại bỏ trương mục người dùng mới được tạo ra từ các hệ thống sau khi bạn hoàn thành thử nghiệm.
back to the top

Lời giải thích mã

Tạo một mục nhập thư mục mới

Khi bạn tạo mục nhập thư mục trong mẫu này, nó giả định rằng hệ thống đang chạy Microsoft Windows NT, Windows 2000 hoặc Windows XP. Lưu ý rằng chuỗi được thông qua với các DirectoryEntry nhà xây dựng bắt đầu với "WinNT: / /". Bạn cũng có thể chạy dịch vụ thư mục trên hệ điều hành bên thứ ba khác.
DirectoryEntry AD = new DirectoryEntry("WinNT://" + SystemInformation.ComputerName + ",computer");				

Thêm mục nhập thư mục vào cây thư mục

Các mã sau đây cho biết thêm một DirectoryEntry loại người sử dụng với giá trị TestUser1 để các Active Directory cây.
DirectoryEntry NewUser = AD.Children.Add("TestUser1", "user");				

Đặt mật khẩu và mô tả cho tài khoản người dùng mới

Sau mã gọi các Gọi phương pháp để gọi các SetPasswordĐặt phương pháp của các DirectoryEntry đối tượng. Điều này đặt mật khẩu, và gán một mô tả cho tài khoản người dùng. Mã này cũng kêu gọi các CommitChanges phương pháp để lưu thay đổi.
NewUser.Invoke("SetPassword", new object[] {"#12345Abc"});NewUser.Invoke("Put", new object[] {"Description", "Test User from .NET"});NewUser.CommitChanges();				

Thêm các tài khoản cho một nhóm

Để thêm các tài khoản cho một nhóm, hãy làm theo các bước sau:
  1. Định nghĩa một biến loại DirectoryEntry.
  2. Gọi cho các Tìm phương pháp của các Trẻ em thành viên của các ActiveDirectory lớp học để cư trú biến.Trong trường hợp này, nhóm khách là mục tiêu của việc tìm kiếm. Mã này kiểm tra giá trị mà các Tìm phương pháp trở về để xác định nếu nhóm đã được tìm thấy. Nếu nhóm được tìm thấy, tài khoản người dùng mới được thêm vào nhóm.
DirectoryEntry grp;grp = AD.Children.Find("Guests", "group");if (grp != null) {grp.Invoke("Add", new object[] {NewUser.Path.ToString()});}				
back to the top

Khắc phục sự cố

Các mã trong bài viết này không nếu bạn cố gắng chạy mã mà không có đủ đặc quyền để tạo ra một tài khoản người dùng. Đối với mã để hoàn tất thành công, người sử dụng hiện đang đăng nhập vào phải là thành viên của nhóm người quản trị hoặc có quyền cụ thể cho phép người sử dụng để tạo tài khoản người dùng.

back to the top

Cảnh báo: Bài viết này đã được dịch tự động

Thuộc tính

ID Bài viết: 306273 - Xem lại Lần cuối: 08/27/2011 18:03:00 - Bản sửa đổi: 2.0

Microsoft Visual C# 2008 Express Edition, Microsoft Visual C# 2005, Microsoft Visual C# .NET 2002 Standard Edition

  • kbhowtomaster kbmt KB306273 KbMtvi
Phản hồi