set fso = createobject ("Scripting.filesystemobject") set uo = getobject("LDAP://cn=users,dc=oracle,dc=com") my_file = "d:\tp12\utils.txt" fichier_login = "d:\tp12\logins.txt" set selected_file = fso.opentextfile (my_file,1) set log_login = fso.opentextfile (fichier_login,2) '############################################### do while not selected_file.atendofstream my_line = selected_file.readline '##On enleve les virgules pour separer## decoup = split(my_line, ",") decoup(0) = nom decoup(1) = prenom decoup(2) = service '## logintest = left(nom,1) & nom i = 0 '##Validation du login## do while not log_login.atendofstream linetest = log_login.readline decouplogin = split(log_login, ",") if logintest = decouplogin(2) then i = i + 1 login = logintest & i else end if '##Creation utilisateur## nomMAJ = UCase(nom) passwd = len(nom) & left(prenom,1) & left(nomMAJ,1) & "_" & left(service,4) set user = uo.create("User","cn=" & nom) user.setinfo user.put "sAMAccountName", login user.setinfo user.setpassword passwd user.setinfo '##Rajoute user dans groupe## set groupe = getobject("LDAP://cn=" & service & ",ou=DSI,dc=oracle,dc=com") set user_ingroupe = getobject ("LDAP://cn=" & login & ",ou=DSI,dc=oracle,dc=com") groupe.add user_ingroupe.ADSPath '##Crea Dossier## dossier_util = "d:" & service & "" & login set createdfolder = fso.createfolder (dossier_util) '##Ecriture dans logins.txt## fichier_login.writeline(nom & "," & prenom & "," & login & "," & passwd) '## i = i + 1 loop '##Fin et fermeture fichiers## selected_file.close fichier_login.close
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questiondim decoup 'tableau temp dim nom, prenom, service do while not selected_file.atendofstream decoup = split(selected_file.readline, ",") nom = decoup(0) prenom = decoup(1) service = decoup(2) '...
Dim FSO 'File System Object Set FSO = CreateObject("Scripting.filesystemobject") Dim OU 'Organization Unit Set OU = GetObject("LDAP://cn=users,dc=oracle,dc=com") Dim Groupe 'groupe de l'OU Dim UserParent 'enfant du groupe, parent/propriétaire de l'utilisateur Dim User 'utilisateur du groupe Dim FileUtils, FileLogins 'chemin des fichiers FileUtils = "d:\tp12\utils.txt" FileLogins = "d:\tp12\logins.txt" Dim StreamUtils, StreamLogins 'contenus des fichiers Set StreamUtils = FSO.opentextfile(FileUtils, 1) Set StreamLogins = FSO.opentextfile(FileLogins, 2) Dim Nom, UNom, Prenom, Service, Login, TLogin, Password 'data splitées depuis les 2 fichiers Dim saTmpLine 'tableau depuis UNE ligne Dim i 'incrément Do While Not StreamUtils.atendofstream ' ligne en cours, splitée saTmpLine = Split(StreamUtils.readline, ",") ' nom prenom service Nom = saTmpLine(0) Prenom = saTmpLine(1) Service = saTmpLine(2) ' login = nom précédé de première lettre du nom TLogin = Left(Nom, 1) & Nom Login = TLogin ' vérification des autres logins non similaires i = 0 Do While Not StreamLogins.atendofstream saTmpLine = Split(StreamLogins.readline, ",") If TLogin = saTmpLine(2) Then i = i + 1 Login = TLogin & CStr(i) End If Loop ' Creation utilisateur UNom = UCase(Nom) Password = CStr(Len(Nom)) & Left(Prenom, 1) & Left(UNom, 1) & "_" & Left(Service, 4) Set User = OU.Create("User", "cn=" & Nom) User.setinfo User.put "sAMAccountName", Login User.setinfo User.setpassword Password User.setinfo ' Rajoute user dans groupe Set Groupe = GetObject("LDAP://cn=" & Service & ",ou=DSI,dc=oracle,dc=com") Set UserParent = GetObject("LDAP://cn=" & Login & ",ou=DSI,dc=oracle,dc=com") Groupe.Add UserParent.ADSPath ' Creation Dossier FSO.createfolder "d:" & Service & "" & Login ' Ecriture dans logins.txt FileLogins.writeline Nom & "," & Prenom & "," & Login & "," & Password ' destruction Set Groupe = Nothing Set UserParent = Nothing Set User = Nothing Loop 'Fin et fermeture fichiers StreamUtils.Close FileLogins.Close Set StreamUtils = Nothing Set FileLogins = Nothing Set OU = Nothing Set FSO = Nothing