void Button2Click(object sender, EventArgs e) { AD.Domain = txtDomain.Text.Trim(); AD.LogonServer = txtLogonserver.Text.Trim(); AD.UsersProfile = txtProfilePath.Text.Trim(); AD.ElevesScript = txtElevesScript.Text.Trim(); AD.ProfsScript = txtProfsScript.Text.Trim(); label2.Text = "Création des entrées AD"; AD.BuildENTOuStructure(); label2.Text = "Création des entrées de stockage"; Storage.BuildENTRootDirectoryStructure(cbxLocalDrives.SelectedItem.ToString()); // crée les comptes via un thread séparé accountsCreator.RunWorkerAsync(); }
public bool CreateAccount() { bool isExisting; using (var user = AD.CreateNewUser(this, out isExisting)) { if (!isExisting) { if (IsPupil) { AD.AddUserToGroup(user, "ENT_Eleves", "Élèves présents sur l'ENT"); AD.AddUserToGroup(user, AD.CLASSE_GROUPNAME_PREFIX + Division, "Classe de " + Division); } else { AD.AddUserToGroup(user, "ENT_Professeurs", "Professeurs présents sur l'ENT"); } } else { if (IsPupil) { string oldDivision = user.GetProperty("division"); // si la classe a changé, on migre l'utilisateur if (oldDivision != Division) { AD.UpdateUserGroup(user, AD.CLASSE_GROUPNAME_PREFIX + Division, AD.CLASSE_GROUPDESC_PREFIX + Division); AD.UpdateUserDivision(user, Division); Storage.MoveUserDirectory(SAMAccountName, oldDivision, Division); } } } } return(isExisting); }