In 2001 I was working for Computype, a local network consulting company, that had several school clients. One of those clients, my current employer BTHS 201, was migrating from a Novell network to MS Active Directory and wanted all students to have login accounts where they did not before. The district is around 5000 students so creating them manually was not an option. MS had tools available that read in CSV files to create users but with 5000 users we knew there would be name conflicts we didn't want to resolve manually. I started work on v1 of AutoAddUsers. This program has been in use at BTHS 201 ever since, long before I actually started working here due to that relationship. In 2007 I began working as an employee of BTHS 201 and now I was in charge of creating the users. Funny things happen, when you are the end user of your own product your feature requests to yourself go way up! The program went through a complete overhaul around this time making it much more professional and polished. Features that made it easier to use in our K-12 environment were added such as saving a student ID number with their AD attributes. In 2010 what we coined "The Dream" was finished. Each night an automated list of new students enrolled in the district is created and processed by AutoAddUsers. The resulting names and passwords created are imported into our Student Management System.  Additional changes are noted below in the changelog.  This program has 100% removed the tedious tasks of creating student user accounts in our environment and has made the program much more attractive for other school districts.



4.0.2 – Default password length change, CN Generate bug fix

Changed the default password length in the sample xml and the gui from 5 characters to 8. This is to enhance security and be closer in line with standard practices of websites.

Bug was discovered that when using the program silently, but using the older method of specifying all variables globally the silent creation xml did not specify a generate CN name syntax. Added this variable to the xml and backend code to support it.


4.0.1 – compatibility issue prevention

The internal workings and GUI of program have not changed in this release but in the process of working with another application development project it has come to my attention that there can be issues when using VB6 ADO objects and compiling the application on a computer running Windows 7 SP1.  A hotfix was released by MS to resolve this issue.  This version is just a recompile of the same code after the MS hotfix has been installed.  The hotfix did resolve the issues I was having in the other project and AutoAddUsers does use ADO objects in the code.  This just enforces the fact that I need to update the development platform for this project


4.0 - bug fixes, new features

This version allows for a significant shift in the way the program can be used while still maintaining backwards compatibility with previous config files and end user experience.  The program allows for almost all creation variables to be individualized per user being created.  The end user can set the OU / Group / Desc / etc, load a list of users, then change all creation variables and load another set of users before clicking go.  In most environments the previous version(s) would have to be executed usually at least once per class to get the users into AD in the desired OU.  The import function supports the original file format of just a minimum of first name only if desired, or all 14 CSV fields can be specified.  When implementing nightly autosilent creation this means that if the input file can be produced with all the varying fields per line, then only an input and one autoaddusers XML file is needed.

The other feature added was probably the most requested: You can now customize the CN of the created users.  Before, in Active Directory Users and Computers the user “Name” column was the sAMAccountName.  Now it can be “John Smith”, “Smith, John”, or whatever you’d like since it uses the same generation syntax system used with the user name.  Make sure to provide an optional and/or build field in your syntax so if you get two John Smith’s in the same OU it can still create unique names.  The default is to append 1, 2, or 3 .’s to the end of the CN if duplicates are created.  This can be customized though.

New syntax variable support: you can now use the Extra/Meta data provided with a user for all or part of their username.  With the new CN naming support, you can use the dynamically created username as all or part of the CN as well.  The username was the only available CN in prior versions.

Bugfix/feature – spaces and apostrophes have always been stripped from names when creating the user.  Those are still stripped from possible logon names but they will be saved for CN’s and Display Names.  So names like John O’Brien or Migel Don Juan can remain intact for display purposes.

Bugfix – in a previous release the requirement to create home directories was removed.  To not create home directories you left the default path of “\\” set.  This was confusing so now if you leave it to “\\” or if you clear it to be blank home directories will not be created.  This is true for the import file as well.



3.60 - feature request

Removed requirement of setting a home path.  This was an end user request from a network that used folder redirection without explicity defined home drives.  If you leave the in app home folder path set to "\\" it will not create directories for the users and nothing will be filled in on the home drive portion of the users properties.



3.53 - bug fix/removal of deprecated apps

Was notified of an issue creating users from a CSV.  Worked with the end user and issue ended up being CSV encoding.  The CSV was MAC encoded. Added a notice to file prompt notifying the user that a dos encoded file is needed.  Noted this in the readme as well.  After many years of development of autoaddusers and zero development on the other apps I have removed them from the install and dropped the autobatchsuite name in favor of the download just being AutoAddUsers.



3.52 - Feature/bug fix

Stand alone the program functions fine but there was a bug if you're implementing silent creation and have the program being called back to back in a batch file.  The editacltmp.bat file would get overwritten in subsequent executions before it would finish running the lines written to it.  To fix this: If you're using silent creation, the program will use the name of your export file and add .bat to the end of it and call that file name instead.  If running in standard mode, editacltmp.bat will still be the name of the file since users are not forced to specify an export file in standard mode.  Also, the name of the

installed executable will just be Autoaddusers from now on since appending the version number to the executable breaks pre-written batch files.



3.51 – Bug fix

When adding users one at a time using the GUI the metadata was being used as the login name instead of name generation. This bug wasn't caught when the meta data feature was added since most use is with import files.  Import files work fine. Had to do with the call to procedure AddListItems and not passing placeholders for the optional variables.



After 10 years of development change log started...have to start somewhere :-)