Bäumchen 10 Geschrieben 13. Juni 2005 Melden Teilen Geschrieben 13. Juni 2005 abend ich habe zwar nicht ganz so viel plan von VBScript aber naja ich versuchs mal *g* b.SetInfo <--damit werden die einstellungen gesetzt, dh nach den TS-einstellungen muss das auch hin ich hoffe es geht jetzt :) mfg norbert gn8 Zitieren Link zu diesem Kommentar
CoolAce 17 Geschrieben 14. Juni 2005 Melden Teilen Geschrieben 14. Juni 2005 Hallo zusammen, hab deinen Tipp versucht aber irgendwi will er nicht so recht. Dim fso, f, Zeile, Feld Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.OpenTextFile ("user.txt",1,0) Do while not f.AtEndOfLine Zeile = f.readLine Feld = split(Zeile,",") Benutzer = Feld(0) Vorname = Feld(1) Nachname = Feld(2) Passwort = Feld(3) Mail = Feld(4) GroupString = Feld(5) Call BenuntzerAnlegen(Benutzer,Vorname,Nachname,Passwort,Mail) Loop f.Close Wscript.Quit(0) Sub BenuntzerAnlegen (Benutzer,Vorname,Nachname,Passwort,Mail) Dim ouo, b Set ouo = GetObject("LDAP://OU=Benutzer,DC=playboy83,DC=de") Set b = ouo.Create("user", "CN=" & Vorname & " " & Nachname) Dim WshShell, ret Set WshShell = WScript.CreateObject("WScript.Shell") b.Put "sAMAccountName", Benutzer b.Put "userPrincipalName", Benutzer & "@playboy83.de" b.Put "mail", Mail & "@playboy83.de" b.Put "profilePath", "\\windows2003dc\daten\profile\" & Benutzer b.Put "homeDirectory", "\\windows2003dc\daten\home\" & Benutzer b.Put "homeDrive", "f:" b.Put "c", "DE" b.Put "co", "DEUTSCHLAND" b.Put "l", "Stadt" b.Put "postalCode", "PLZ" b.Put "postOfficeBox", "Postfach" b.Put "st", "Bundesland" b.Put "streetAddress", "Strasse Zeile 1" & vbCrlf & "Strasse Zeile 2" & vbCrlf b.SetInfo b.SetPassword Passwort b.AccountDisabled = False b.Put "pwdLastSet", 0 b.SetInfo b.Put "TerminalServicesHomeDirectory", "\\windows2003dc\Daten\TS\home" b.Put "TerminalServicesHomeDrive", "t:" b.Put "TerminalServicesProfilePath", "\\windows2003dc\daten\TS\Profile" b.SetInfo WScript.Sleep(1000) ret = WshShell.Run ("verz.cmd " & Benutzer,0,1) Set GroupObj = GetObject("WinNT://playboy83/" & GroupString) GroupObj.Add ("WinNT://playboy83/" & Benutzer) Set DomainObj = Nothing Set GroupObj = Nothing End Sub Fehlermeldung: Zeile 46 Zeichen 1 Das angegebene Verzeichnisdienstattribut bzw. der angegebene Verzeichnisdienstwert ist bereits vorhanden Woran kann das wieder liegen Sorry CoolAce Zitieren Link zu diesem Kommentar
CoolAce 17 Geschrieben 15. Juni 2005 Melden Teilen Geschrieben 15. Juni 2005 Hy keiner eine Idee ? Gruß CoolAce :cool: Zitieren Link zu diesem Kommentar
heinzelrumpel 10 Geschrieben 15. Juli 2005 Melden Teilen Geschrieben 15. Juli 2005 Hi, danke für dieses script. habe es jetzt mal ausprobiert und es funktioniert soweit, bis auf die tatsache, dass nur der erste benutzer aus der "user.txt" angelegt wird. so sieht die *.vbs aus Dim fso, f, Zeile, Feld Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.OpenTextFile ("user.txt",1,0) Do while not f.AtEndOfLine Zeile = f.readLine Feld = split(Zeile,",") Benutzer = Feld(0) Vorname = Feld(1) Nachname = Feld(2) Passwort = Feld(3) Call BenuntzerAnlegen(Benutzer,Vorname,Nachname,Passwort) Loop f.Close Wscript.Quit(0) Sub BenuntzerAnlegen (Benutzer,Vorname,Nachname,Passwort) Dim ouo, b Set ouo = GetObject("LDAP://CN=Users,DC=oekonet,DC=intra") Set b = ouo.Create("user", "CN=" & Vorname & " " & Nachname) Dim WshShell, ret Set WshShell = WScript.CreateObject("WScript.Shell") b.Put "sAMAccountName", Benutzer b.Put "userPrincipalName", Benutzer & "@oekonet.intra" b.Put "profilePath", "\\testserver\daten\profile\" & Benutzer b.Put "homeDirectory", "\\testserver\daten\home\" & Benutzer b.Put "homeDrive", "U:" b.SetInfo b.SetPassword Passwort b.AccountDisabled = False b.SetInfo WScript.Sleep(1000) ret = WshShell.Run ("verz.cmd " & Benutzer,0,1) End Sub und die user.txt sieht so aus hmuster,Hans,Muster,xxx ssorglos,Sabiene,Sorglos,xxx etc... sehe da irgendwie keinen Fehler,oder ist diese script nur für w2k3 und nicht für w2k geeignet? gruß heinzelrumpel Zitieren Link zu diesem Kommentar
nicki01 10 Geschrieben 19. Juli 2005 Melden Teilen Geschrieben 19. Juli 2005 Hallo zusammen, VIELEN DANK für dieses Script. Ich habe nur leider das gleiche Problem wie heinz. Auch bei mir wird nur der erste Benutzer angelegt. Woran liegt das ??? LG Nicki Zitieren Link zu diesem Kommentar
heinzelrumpel 10 Geschrieben 21. Juli 2005 Melden Teilen Geschrieben 21. Juli 2005 Hallo zusammen, VIELEN DANK für dieses Script. Ich habe nur leider das gleiche Problem wie heinz. Auch bei mir wird nur der erste Benutzer angelegt. Woran liegt das ??? LG Nicki ich glaube, dass thorgood den suport für dieses skript eingestellt hat :D Zitieren Link zu diesem Kommentar
coly 10 Geschrieben 9. August 2005 Melden Teilen Geschrieben 9. August 2005 Habe vor langer Zeit (2 Jahren) mal ein Script geschrieben das von einer Text Datei die Benutzernamen ausliest, den Account im Active Direcory erstellt und gleichzeitig Homelaufwerk, Profile Pfad und Ordner erstellt. Hab es ebenfass in der Schule benötigt. Das schwierigste war das Ordner erstellen, weil das keine LDAP Sache ist, sondern eine Sache des Betriebssystems, und dann sollten die Zugriffsrechte für die einzelnen Benutzer passen. So weit ich mich noch erinnern kann, werd ich dir mal meine Scripts erklären, die du im Anhang findest: + 'ADsSecurity.dll' musst du mit ADsSecurity.bat oder manuell registrieren, ich weis nicht mehr ob die DLL für LDAP oder für die Zugriffsrechte zuständigi ist + mit 'AccessMask.vbs' hab ich das ertellen der Ordner und die passenden Zugriffsrechte getestet + 'Info erstellen.vbs' erstellt einen Datei Namens 'Info Liste.txt' und schreibt Informationen einer bestimmten OU rein + 'Benutzer anlegen.vbs' legt die Benutzer im AD an, die in der Datei 'Benutzer.txt' stehen + in der Datei 'ReadMe.txt' steht, wie die Benutzer in der Datei 'Benutzer.txt' stehen muss viel Spaß beim testen coly Zitieren Link zu diesem Kommentar
nicki01 10 Geschrieben 17. August 2005 Melden Teilen Geschrieben 17. August 2005 Vielen Dank für deine Mühe Coly, ich habe das Script in der Schule ans laufen gekriegt, nur bei mir zu Hause nicht. Ist auch nicht weiter schlimm, da ich hier keine 900 Benutzer benötigte. nicki Zitieren Link zu diesem Kommentar
jensw_2000 10 Geschrieben 19. August 2005 Melden Teilen Geschrieben 19. August 2005 Für alle die sich erfolglos oder krampfhaft mit der Scripterstellung herumschlagen ... Ich habe ein kleines Freeware-Tool entwickelt das euch automatisch ein passendes VB-Script generiert. Das Script kann völlig separat (ohne User.txt und Verz.cmd) weitergegeben bzw. verwendet werden. Das Tool liest Benutzerbequem aus einer Excel Arbeitsmappe ein. Diese werden dann als Array direkt in der VBS Datei gespeichert. Pro User können 4 Gruppen angegeben werden, in denen er (zusätzlich zu den Dom-Benutzern) Mitglied werden soll. Für jeden User kann festgelegt werden ob der Konto in CN=USERS oder einer beliebigen OU angelegt werden soll. Gruppen und OU's werden erstellt, falls nicht vorhanden. Das Tool ist Plugin-fähig. Ideen die weitere Script-Plugins nehme ich gern entgegen. Ich bedanke mich für die wirklich guten Informationen die ich in diesem Thread gefunden habe ... Damit ich nicht ein Thema in Foren diskutieren muss, könnt ich den aktuellen Stand in diesem Thread auf http://www.delphipraxis.net verfolgen. Noch ein kleiner Tip für alle die es verwenden wollen: Der Container des Benutzerkontos wird in der Excel-Tabelle eingegeben (Spalte OU). Wenn in der Spalte kein Wert steht, landet das Konto in CN=USERS, Falls ihr einen anderen Ziel-Contailer verwenden/anlegen wollt, gebt bitte nicht OU=MeineOU ein, sondern nur MeineOU . das OU= fügt mein Tool von selbst hinzu. Schöne Grüße, Jens Zitieren Link zu diesem Kommentar
hoshi 10 Geschrieben 25. August 2005 Melden Teilen Geschrieben 25. August 2005 ... Do while not f.AtEndOfLine Zeile = f.readLine Feld = split(Zeile,",") Benutzer = Feld(0) Vorname = Feld(1) Nachname = Feld(2) Passwort = Feld(2) Call BenuntzerAnlegen(Benutzer,Vorname,Nachname,Passwort) Loop f.Close Wscript.Quit(0) ... thorgood ... so ganz nebenbei lerne ich einen SPLIT-Befehl. :D Vorher habe ich mühsam (und wenig elegant) die Zeilen ausgelesen und die Trennzeichen als [Nr Anfangszeichen + 1] verwendet. Vielen Dank, thorgood!!! cu hoshi Zitieren Link zu diesem Kommentar
switzly 10 Geschrieben 29. August 2005 Melden Teilen Geschrieben 29. August 2005 hallo ich habe eben das erwähnte script auf einem W3 Server getestet und es funktioniert wunderbar... weiss jemand wie man in den properties eines jeden users noch automatisch zusätzliche informationen hinterlegen kann wie name, vorname, firma etc? dass mann alle users markieren kann und gewisse sachen zentral ändern das weiss ich. was ich wahrscheinlich bräuchte ist eine liste der objects, die in diesem script benutzt werden können... da bin ich stecken geblieben... für eure hilfe danke ich euch schon mal im voraus! switzly Zitieren Link zu diesem Kommentar
SReim 10 Geschrieben 8. Dezember 2005 Melden Teilen Geschrieben 8. Dezember 2005 hallo, das scipt ist hier ja echt genial. mein problem ist nur, das ich zu den normalen benutzerangaben auch noch RAS Optionen setzen muss. Also das dem Benutzer die RAS / Dial In Einwahl erlaubt ist ( also auf Allow steht und ich muss dem User eine IP Adresse direkt zuweisen. Jemand ne Idee?? grüße, SReim Zitieren Link zu diesem Kommentar
eitiiler 10 Geschrieben 2. Februar 2006 Melden Teilen Geschrieben 2. Februar 2006 Hallo, hab das Script auch mal versucht und hab noch ein Problem: Script: c:\create_user.vbs Line: 26 Char: 1 Error: The Object Already Exists. Code: 80071392 Soure: (null) Hier mein Script in leicht geändertert Form: Dim fso, f, Zeile, Feld Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.OpenTextFile ("user.txt",1,0) Do while not f.AtEndOfLine Zeile = f.readLine Feld = split(Zeile,",") Benutzer = Feld(0) Vorname = Feld(1) Nachname = Feld(2) Passwort = Feld(3) Call BenuntzerAnlegen(Benutzer,Vorname,Nachname,Passwort) Loop f.Close Wscript.Quit(0) Sub BenuntzerAnlegen (Benutzer,Vorname,Nachname,Passwort) Dim ouo, b Set ouo = GetObject("LDAP://OU=Benutzer,DC=itforum,DC=OS52,DC=de") Set b = ouo.Create("user", "CN=" & Vorname & " " & Nachname) Dim WshShell, ret Set WshShell = WScript.CreateObject("WScript.Shell") b.Put "sAMAccountName", Benutzer b.Put "userPrincipalName", Benutzer & "@itforum.os52.de" b.Put "profilePath", "\\fthw9crc\daten\profile\" & Benutzer b.Put "homeDirectory", "\\fthw9crc\daten\home\" & Benutzer b.Put "homeDrive", "H:" b.SetInfo b.SetPassword Passwort b.AccountDisabled = False b.SetInfo WScript.Sleep(1000) ret = WshShell.Run ("verz.cmd " & Benutzer,0,1) End Sub Hat jemand vielleicht nen Tip Danke und grüsse ghostr Was war der Fehler? hab den gleichen..... Zitieren Link zu diesem Kommentar
kfabian 10 Geschrieben 15. Februar 2006 Melden Teilen Geschrieben 15. Februar 2006 Hallo Leute, ich bekomme es nicht wirklich hin. mein Script, newuser.vbs Dim fso, f, Zeile, Feld Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.OpenTextFile ("user.txt",1,0) Do while not f.AtEndOfLine Zeile = f.readLine Feld = split(Zeile,",") Benutzer = Feld(0) Vorname = Feld(1) Nachname = Feld(2) Passwort = Feld(3) Call BenuntzerAnlegen(Benutzer,Vorname,Nachname,Passwort) Loop f.Close Wscript.Quit(0) Sub BenuntzerAnlegen (Benutzer,Vorname,Nachname,Passwort) Dim ouo, b Set ouo = GetObject("LDAP://CN=users,DC=webserver,DC=local") Set b = ouo.Create("user", "CN=" & Vorname & " " & Nachname) Dim WshShell, ret Set WshShell = WScript.CreateObject("WScript.Shell") b.Put "sAMAccountName", Benutzer b.Put "userPrincipalName", Benutzer & "@webserver.local" b.Put "profilePath", "\\w2003stand\profile$\" & Benutzer b.Put "homeDirectory", "\\w2003stand\home$\" & Benutzer b.Put "homeDrive", "U:" b.SetInfo b.SetPassword Passwort b.AccountDisabled = False b.SetInfo WScript.Sleep(1000) ret = WshShell.Run ("verz.cmd " & Benutzer,0,1) End Sub Ich bekomme die Fehlermeldung Zeile 28, Objekt schon vorhanden Was mache ich falsch ?? Zitieren Link zu diesem Kommentar
slouch 10 Geschrieben 30. März 2006 Melden Teilen Geschrieben 30. März 2006 hy zusammen das script ist echt genial!! danke vielmal an alle die mitgewirkt haben! Habe nun aber ein anderes Problem. Ich bin gerade an der Migration einer NT4 Domäne nach Windows 2003. Da in einer NT Umgebung alle Benutzerinformationen auf dem Exchange sind habe ich in den neuen Benutzerkonten unter 2003 nurnoch Anmeldenamen, Gruppenzuordnung, Profilpfad u.s.w. Ist es möglich die Benutzerinformationen (Name, Vorname, Adresse, Tel u.s.w.) per Script hinzuzufügen? Oder könnte man diese sogar vom alten Exchange in die neue Umgebung migrieren? Wäre dankbar für jede hilfe. Gruss slouch 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.