'------------------------------------------------------------------------- ' UpdatesRVComment ' ' Beschreibung ' Gleicht PC Beschreibung im AD und Serverdienst miteinander ab ' AD-Beschreibung gewinnt, wenn gefüllt ' ' Vorgehensweise ' z.B. per Gruppenrichtlinie auf allen PCs als "StartupScript" einbinden ' ' ' Version 1.0 (12. Jan. 2006) ' Erste Version ' Version 1.1 (22. Mrz. 2006) ' Erweiterung um Eventlogs '------------------------------------------------------------------------- Option Explicit 'on error resume next dim WSHShell, WshNetwork, strResult, objSysInfo, strcomment, objComputer Set WSHShell = WScript.CreateObject("WScript.Shell") wscript.echo "UpdatesRVComment gestartet" wshShell.LogEvent 4, "UpdatesRVComment gestartet" Set WshNetwork = WScript.CreateObject("WScript.Network") WScript.Echo "Computer Name = " & WshNetwork.ComputerName Set objSysInfo = CreateObject("ADSystemInfo") strResult = "Computername from ADSystemInfo:" & objSysInfo.ComputerName wscript.echo "AD-Computer-DN:" & objSysInfo.ComputerName Set objComputer = GetObject("LDAP://" & objSysInfo.ComputerName) strResult = strResult & vbcrlf & "old AD-Description :" & objComputer.description wscript.echo "AD-Description:" & objComputer.description if objComputer.description = "" then ' get servercomment and write to AD wscript.echo "Mode: SrvComment -> AD." strResult = strResult & vbcrlf & "Mode: SrvComment -> AD." & vbcrlf & _ " SrvComment =" & strcomment strcomment = WshShell.RegRead("HKLM\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters\srvcomment") strcomment = replace(strcomment,WshNetwork.ComputerName & ":","") ' entferne Computername: objComputer.Description = strcomment wscript.echo " Write to AD" objComputer.SetInfo strResult = strResult & vbcrlf & " AD Updated :" & strcomment else ' read AD description wscript.echo "Mode: AD -> SrvComment." strResult = stRresult & vbcrlf & "Mode: AD -> SrvComment." & vbcrlf & _ " AD-Description=" & strcomment strcomment = objComputer.Description strcomment = replace(strcomment,WshNetwork.ComputerName & ":","") ' entferne etwaigen Computername: strcomment = WshNetwork.ComputerName & ":" & strcomment ' Add Computername as prefix wscript.echo " Write to REG" WshShell.RegWrite "HKLM\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters\srvcomment" , strcomment , "REG_SZ" strResult = strResult & vbcrlf & "Registry Updated:" & strcomment strResult = stRresult & vbcrlf & " AD -> SrvComment:" & strcomment end if wshShell.LogEvent 4, "UpdatesRVComment done" & vbcrlf & strresult wscript.echo "UpdatesRVComment done" & vbcrlf & strresult