Làm thế nào để prestage một máy khách RIS bằng cách sử dụng ADSI

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:302467
Bài viết này đã được lưu trữ. Bài viết được cung cấp "nguyên trạng" và sẽ không còn được cập nhật nữa.
GIỚI THIỆU
Các netbootGUID thuộc tính của một đối tượng máy tính trong Active Directory được thiết lập để cả hai máy tính GUID, nếu có sẵn, hoặc một giá trị được tính dựa trên địa chỉ thẻ mạng cho một máy tính đã được cho phép để sử dụng dịch vụ cài đặt từ xa (RIS). Các netbootGUID thuộc tính được đặt trong giai đoạn prestaging máy tính khách hàng. Bằng cách sử dụng Active Directory dịch vụ giao diện (ADSI), máy tính khách hàng có thể được lập trình prestaged bằng cách thiết lập đối tượng máy tính netbootGUID thuộc tính trong Active Directory.
THÔNG TIN THÊM
Khi một máy tính khách hàng RIS trên mạng bắt đầu nó sẽ khởi tạo một yêu cầu dịch vụ mạng. Các máy chủ RIS (sử dụng dịch vụ khởi động thông tin đàm phán lớp [BINL]) phải kiểm tra Active Directory cho sự tồn tại của một tài khoản máy tính khách hàng prestaged phù hợp với máy tính khách hàng. BINL kiểm tra sự tồn tại của một máy tính khách hàng bởi câu Active Directory cho một máy tính đối tượng mà netbootGUID trận đấu GUID trong yêu cầu.

Các mẫu được cung cấp trong phần này chứng minh:
  • Làm thế nào để lập trình prestage máy tính khách hàng bằng cách thiết lập các netbootGUID thuộc tính trong Active Directory.
  • Làm thế nào để xác định những gì các netbootGUID thuộc tính nên được đặt thành.

Mẫu mã

Lập trình Prestage khách hàng

Các mẫu sau đây sử dụng Microsoft Visual Basic để chứng minh làm thế nào để lập trình prestage máy tính khách hàng bằng cách thiết lập giá trị chuỗi octet của các netbootGUID thuộc tính vào đối tượng máy tính trong Active Directory.
'Here is an example of using the CLSIDFromString function to set'netbootGUID attribute on an existing computer object.'You can also set netbootGUID at the creation time of the computer objectPrivate Declare Function CLSIDFromString _    Lib "ole32.dll" (ByVal lpszProgID As Long, _                    pCLSID As Byte) As LongPrivate Sub Form_Load()  Dim oComp As IADs  Dim retval As Long  Dim strGUID As String  Dim pGUID(0 To 15) As Byte  strGUID = "{EEF00083-8597-4c2c-9ACB-FC860480FC5D}"  retval = CLSIDFromString(StrPtr(strGUID), pGUID(0))  Set oComp = GetObject("LDAP://cn=comp1,cn=computers,dc=mydomain,dc=com")  oComp.Put "netbootGUID", CVar(pGUID)  oComp.SetInfo   Set oComp = nothingEnd Sub				

Lập trình xác định giá trị NetbootGUID

Các mẫu sau đây sử dụng Microsoft Visual Basic Script để chứng minh làm thế nào để lập trình xác định những gì các netbootGUID giá trị thuộc tính nên được đặt để cho một máy tính.
'The sample uses WMI to return the UUID on the system.'If a UUID can not be found on the system it returns all F's.'What RIS does in this case is it uses a zero'd out version of the MAC 'address of the NIC the machine is booting off of. 'This sample will return the value required to set the 'netbootGUID attributeOption ExplicitDim boolWFMCapableDim szUUIDDim szMacDim SystemSetDim szAdapterDescriptionDim SystemItemDim NetworkAdapterSetDim NetworkAdapterDim iMacCount Set SystemSet = GetObject("winmgmts:").InstancesOf ("Win32_ComputerSystemProduct") For Each SystemItem In SystemSet  szUUID = SystemItem.UUID  If szUUID = "FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF" Then    MsgBox "No system UUID could be found. This system does " & _           "not appear to support Intel's Wired For Management " & _           "specification. This script will now try and retrive " & _           "a MAC based UUID.", vbInformation, "Not WFM capable"    boolWFMCapable = 0  Else    InputBox "Successfully retrieved a system UUID, " & szUUID & _             ". This UUID has been placed in the text area below " & _             "for your convenience.", "WFM Capable", szUUID    boolWFMCapable = 1  End IfNext If boolWFMCapable = 0 Then  Set NetworkAdapterSet = GetObject("winmgmts:").InstancesOf ("Win32_NetworkAdapter")   iMACCount = 0  For Each NetworkAdapter In NetworkAdapterSet    If NetworkAdapter.AdapterType = "Ethernet 802.3" Then      szAdapterDescription = NetworkAdapter.Description      If NetworkAdapter.Description <> "Packet Scheduler Miniport" Then        szMAC = NetworkAdapter.MACAddress        szUUID = "00000000-0000-0000-0000-"&Replace(szMAC, ":", "")        InputBox "Based on the network adapter with the description """ & _                 szAdapterDescription & """, your system's UUID would " & _                 "be " & szUUID & ". This UUID has been placed in the " & _                 "text area below for your convenience." , _<BR/>                 "Not WFM Capable", szUUID      End If     End If    iMACCount = iMACCount + 1  NextEnd If				
THAM KHẢO
Để biết thêm chi tiết về ADSI, ghé thăm Web site sau của Microsoft:
Tổng quan về giao diện dịch vụ thư mục đang hoạt động
http://technet.Microsoft.com/en-US/windowsserver/2000/bb735360.aspx
Để biết thêm chi tiết về các dịch vụ cài đặt từ xa, ghé thăm Web site sau của Microsoft:Để biết thêm chi tiết về làm thế nào để lập trình xác định máy tính của GUID, nhấp vào số bài viết sau đây để xem bài viết trong cơ sở kiến thức Microsoft:
198871IShellFolder::GetDisplayNameOf trả về tên với GUIDs
Để biết thêm chi tiết về làm thế nào máy tính của GUID được tạo ra bởi đĩa khởi động cài đặt từ xa, nhấp vào số bài viết sau đây để xem bài viết trong cơ sở kiến thức Microsoft:
242920Làm thế nào đĩa khởi động cài đặt từ xa hoạt động
Để biết thêm chi tiết về CLSIDFromString, ghé thăm Web site sau của Microsoft Developer Network (MSDN):Để biết thêm thông tin, hãy bấm vào số bài viết sau để xem bài viết trong Cơ sở Kiến thức Microsoft:
183544Làm thế nào để gọi CLSID và ProgID liên quan đến COM API trong Visual Basic
Đối với một tổng quan về WMI, truy cập vào MSDN Web site sau:

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

Thuộc tính

ID Bài viết: 302467 - Xem lại Lần cuối: 12/06/2015 03:33:02 - Bản sửa đổi: 2.0

Microsoft Windows 2000 Server, Microsoft Windows 2000 Advanced Server

  • kbnosurvey kbarchive kbdswadsi2003swept kbhowto kbmt KB302467 KbMtvi
Phản hồi