TeaRex 10 Geschrieben 15. Januar 2005 Melden Teilen Geschrieben 15. Januar 2005 Hi Boardies, nach langem suchen habe ich ein skript gefunden mit dem man benutzer via excel in's ad einer domäne aufnehmen kann. genau so etwas habe ich schon lange gesucht, da sich die user bekanntlich via excel viel einfacher errichten lassen. leider stosse ich nun auf ungeahnte probleme! vielleicht könnte sich mir jemand annehmen, denn ich bin überzeugt, das jederman von diesem skript porfitieren könnte. Folgende Fehlermeldung tritt auf: Unable to bind to containter : ou=Testuser,dc=xxxxxx erklärung: zuvor wurde von mir eine ou testuser errichtet, als dc habe ich unseren domäne eingetragen. zudem habe ich den pfad zu dem excelsheet aktualisiert. woran könnte es liegen? vielen Dank für eure hilfe! TeaRex hier ein auszug aus dem skript. Option Explicit Dim objExcel, strExcelPath, objSheet Dim strLast, strFirst, strMiddle, strPW, intRow, intCol Dim strGroupDN, objUser, objGroup, objContainer Dim strCN, strNTName, strContainerDN Dim strHomeFolder, strHomeDrive, objFSO, objShell Dim intRunError, strNetBIOSDomain, strDNSDomain Dim objRootDSE, objTrans, strLogonScript, strUPN ' Constants for the NameTranslate object. Const ADS_NAME_INITTYPE_GC = 3 Const ADS_NAME_TYPE_NT4 = 3 Const ADS_NAME_TYPE_1779 = 1 ' Specify spreadsheet. strExcelPath = "c:\MyFolder\NewUsers.xls" ' Specify DN of container where users created. strContainerDN = "ou=Testuser,dc=xxxxxxx,dc=ch" Set objFSO = CreateObject("Scripting.FileSystemObject") Set objShell = CreateObject("Wscript.Shell") ' Determine DNS domain name from RootDSE object. Set objRootDSE = GetObject("LDAP://RootDSE") strDNSDomain = objRootDSE.Get("DefaultNamingContext") ' Use the NameTranslate object to find the NetBIOS domain name ' from the DNS domain name. Set objTrans = CreateObject("NameTranslate") objTrans.Init ADS_NAME_INITTYPE_GC, "" objTrans.Set ADS_NAME_TYPE_1779, strDNSDomain strNetBIOSDomain = objTrans.Get(ADS_NAME_TYPE_NT4) ' Remove trailing backslash. strNetBIOSdomain = Left(strNetBIOSDomain, Len(strNetBIOSDomain) - 1) ' Open spreadsheet. Set objExcel = CreateObject("Excel.Application") On Error Resume Next objExcel.Workbooks.Open strExcelPath If Err.Number <> 0 Then On Error GoTo 0 Wscript.Echo "Unable to open spreadsheet " & strExcelPath Wscript.Quit End If On Error GoTo 0 Set objSheet = objExcel.ActiveWorkbook.Worksheets(1) ' Bind to container where users to be created. On Error Resume Next Set objContainer = GetObject("LDAP://" & strContainerDN) If Err.Number <> 0 Then On Error GoTo 0 Wscript.Echo "Unable to bind to container: " & strContainerDN Wscript.Quit End If On Error GoTo 0 ' Start with row 2 of spreadsheet. ' Assume first row has column headings. intRow = 2 ' Read each row of spreadsheet until a blank value ' encountered in column 5 (the column for cn). ' For each row, create user and set attribute values. Do While objSheet.Cells(intRow, 5).Value <> "" ' Read values from spreadsheet for this user. strFirst = Trim(objSheet.Cells(intRow, 1).Value) strMiddle = Trim(objSheet.Cells(intRow, 2).Value) strLast = Trim(objSheet.Cells(intRow, 3).Value) strPW = Trim(objSheet.Cells(intRow, 4).Value) strCN = Trim(objSheet.Cells(intRow, 5).Value) strNTName = Trim(objSheet.Cells(intRow, 6).Value) strUPN = Trim(objSheet.Cells(intRow, 7).Value) strHomeFolder = Trim(objSheet.Cells(intRow, 8).Value) strHomeDrive = Trim(objSheet.Cells(intRow, 9).Value) strLogonScript = Trim(objSheet.Cells(intRow, 10).Value) ' Create user object. Zitieren Link zu diesem Kommentar
Jim di Griz 13 Geschrieben 16. Januar 2005 Melden Teilen Geschrieben 16. Januar 2005 trag als dc mal den domänencontroller ein, nicht die domäne? Zitieren Link zu diesem Kommentar
TeaRex 10 Geschrieben 16. Januar 2005 Autor Melden Teilen Geschrieben 16. Januar 2005 Hi, klappt leider nicht! Bin nochmals durchgegangen, sehe keine ersichtlichen Grund ! Hat jemand vielleicht noch eine Ahnung!? Thx Tea Zitieren Link zu diesem Kommentar
TeaRex 10 Geschrieben 17. Januar 2005 Autor Melden Teilen Geschrieben 17. Januar 2005 Hi, melde mich nochmals! Nachdem ich die OU Testuser verschoben habe (eine Ebene höher im AD) wurden die User erstellt! Funktioniert bis dato!!! Wieso weiss ich nicht??? Eine OU kommt als solche ja nur einmal vor, die User sollten deshalb in der entsprechend richtigen OU erstellt werden können, oder was? Wie kriege ich hin, das die richtige OU gewählt wird? Domäne: -Benutzer ¦Testuser Thx Tea Zitieren Link zu diesem Kommentar
Ritchie 10 Geschrieben 17. Januar 2005 Melden Teilen Geschrieben 17. Januar 2005 Hallo vielleicht mag er es nicht, wenn eine OU unter der vordefinierten OU Benutzer ist. Versuche doch mal die OU Testuser unter einem eigenen OU laufen zu lassen !!! Gruss Ritchie Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.