Jak přednastavení klientského počítače RIS pomocí rozhraní ADSI

Překlady článku Překlady článku
ID článku: 302467 - 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

Úvod

Buď GUID počítače, pokud je k dispozici nebo vypočítané hodnoty na základě síťová adresa karty počítači bylo povoleno použití vzdálené instalace (RIS) je nastaven atribut netbootGUID objektu počítače ve službě Active Directory. Během fáze přednastavení klientského počítače je nastaven atribut netbootGUID. Pomocí Active Directory Services Interface (ADSI) klientského počítače může být programově přednastaven nastavením atributu netbootGUID objektu počítače ve službě Active Directory.

Další informace

Při spuštění počítače klienta RIS v síti inicializuje požadavek síťové služby. Server RIS (pomocí služby [BINL] Boot Information Negotiation Layer) musí zkontrolovat Active Directory pro existenci účtu přednastavené klientské počítače, který odpovídá klientského počítače. BINL zkontroluje existenci klientský počítač pomocí dotazu Active Directory pro objekt počítače, jehož netbootGUID odpovídá GUID odeslaných během požadavku.

Ukázky poskytované v této části ukazují:
  • Jak programově přednastavení klientských počítačů pomocí nastavení atributu netbootGUID Active Directory.
  • Jak zjistit, co atribut netbootGUID by měla být nastavena.

Ukázky kódu

Programově přednastavení klienta

Následující ukázka ukazují, jak programově přednastavení klientského počítače nastavením hodnota oktetu řetězec atributu netbootGUID objektu počítače ve službě Active Directory používá Microsoft Visual Basic.
'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 object

Private Declare Function CLSIDFromString _
    Lib "ole32.dll" (ByVal lpszProgID As Long, _
                    pCLSID As Byte) As Long

Private 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 = nothing
End Sub
				

Programově zjistit hodnota NetbootGUID

Následující ukázkový skript jazyka Microsoft používá k ukazují, jak programově zjistit, co hodnota atributu netbootGUID by měla být nastavena pro počítač.
'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 attribute

Option Explicit

Dim boolWFMCapable
Dim szUUID
Dim szMac
Dim SystemSet
Dim szAdapterDescription
Dim SystemItem
Dim NetworkAdapterSet
Dim NetworkAdapter
Dim 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 If
Next
 
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
  Next
End If
				

Odkazy

Další informace o rozhraní ADSI naleznete na následujícím webu:
Active Directory Services Interface – přehled
http://technet.microsoft.com/en-us/windowsserver/2000/bb735360.aspx
Další informace o služby vzdálené instalace navštivte následující weby:
Instalace klienta RIS a možnosti pro správu konfigurace
http://pssweb/eps/performance/mnp_default.asp?loadtype=dynamic&loadurl=/eps/performance/msi/documentation/risclient.htm

Vzdálená instalace operačního systému
http://technet.microsoft.com/en-us/library/bb742586.aspx
Další informace, jak programově určit identifikátor GUID počítače klepněte na následující číslo článku databáze Microsoft Knowledge Base:
198871Vrátí jména s GUID IShellFolder::GetDisplayNameOf
Další informace o jak v počítači GUID generovaných spouštěcí diskety pro vzdálené instalace klepněte na následující číslo článku databáze Microsoft Knowledge Base:
242920Jak funguje vzdálené instalace spouštěcí disk
Další informace o CLSIDFromString na webu Microsoft Developer Network (MSDN):
http://msdn.microsoft.com/en-us/library/ms680589.aspx
Další informace naleznete následujícím článku znalostní databáze Microsoft Knowledge Base:
183544Jak CLSID a ProgID volání související COM API v jazyka
Přehled WMI na webu služby MSDN:
http://msdn.microsoft.com/en-us/library/bb985153.aspx

Vlastnosti

ID článku: 302467 - Poslední aktualizace: 4. srpna 2006 - Revize: 5.1
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Active Directory Service Interfaces 2.5
  • Microsoft Active Directory Service Interfaces 2.5
Klíčová slova: 
kbmt kbdswadsi2003swept kbhowto KB302467 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:302467

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