Home: USA, Europe

Schematic overview

Feature matrix

Screen shots




Revision history

On-line manual



AdmWin - for the Windows, Linux and Novell Administrator

SetupBatcher revision history

Known Bugs and Issues

  • None

6.01 (8.01)

Novell commands and functions -

"Nov.GW.Account.MoveToPO" - moves GroupWise user account to new post office

"Nov.GW.Account.MoveWithinTree" - moves GroupWise user account from one organizational unit to another

Windows server commands and functions -

Improved "Data.Get.SAM" command - possible to extract machine accounts by setting the new optional "ObjectType" parameter to "Computer".

Support for Exchange server 2007.

Improved "AD.Group.Create", now possible to create universal security groups.

6.0 (8.0) - Now possible to use multiple user defined data sections and nested loops for much more powerful scripts. Example: advanced "multiple attribute edit" and "search & replace" scripts.

  • General commands and functions -
    • "xData.Loop..EndLoop" - extra Data.Loop..EndLoop statements (with corresponding extra data sections)
    • "Data.Connect.xData" - connects data in an [xData] section to data in the [Data] section by row numbers
    • "Data.Copy.xData" - copies data with common identifier from an [xData] section to the [Data] section
    • "xData.Load" and "xData.Save" - loads and saves an [xData] section
    • "xDataRows" - returns number of rows in an [xData] section
    • "xDataValue" - returns a string from a specified column and row in an [xData] section
    • "Data.Insert" - Inserts a new row with a string in a specified column into the [Data] section
    • "Data.Show.Filter" - same as "Data.Show", but with the ability to show rows filtered by a column
    • Improved "Data.Show" - possible to set column names and hide columns through DataShowLabels variable
    • "FileRows" - returns number of rows in a text file
    • "Data.Clear" - clears the [Data] section
    • "Random" - returns a random number in the specified range
    • Fixed: "Data.Get.FileList" problems with more than 100.000 files, many subdirectories and very long file names
    • Fixed: only first row in [Data] section looped after creating or deleting account in SetupExplorer
    • Fixed: pressing the escape key in a "MessageBox" dialog now interrupts the script just like it should
  • OS specific commands and functions -
    • Improved "Data.Get.AD", "Data.Get.AD.Find", "Data.Get.LD.Find" and "Data.Get.ND.Find"; added "add" parameter - add data at the end of the [Data] section instead of replacing the entire [Data] section
    • Fixed: all data.get.x commands produced unpredictable results when no [data] section present - [data] section now auto-created when needed
  • GUI improvements and fixes -
    • The software is now a bit more helpful if someone tries to run an empty script or a script without [Settings] or [Batch] sections
    • Added "Help" button to the error dialog
    • Added Edit > "replace command delimiter" menu option - easy to switch between "," or ";" as delimiter between command parameters
    • Fixed: manual remove markers (from menu or Ctrl+M) did not delete all markers in [Data] section if script interrupted with escape
    • Fixed: "Data" menu - better structure, no junk left from previous choices and some other minor improvements
  • User manual: Added "Find and replace multiple Linux/Novell/Windows user attribute values at once" examples.

5.01 (7.5)

  • Windows server commands and functions -
    • "AD.Account.CopyGroups" - copies group membership from one account to another
    • "OSversion" - returns OS version of specified machine
    • Improved "Data.Get.AD", "Data.Get.AD.Find" and "ADvalue" - can now read almost all account flags
  • General commands and functions -
    • CopyWord returns a delimited part of a string - useful for example to transform a full name string into first name, last name and initials
  • User manual: Added Linux and Novell LDAP SSL certificate topics

5.0 (7.0) - Move accounts, including passwords, between Windows, Linux and Novell. Support for Linux (w. OpenLDAP) and Samba.

  • Move user accounts, including passwords, between Windows, Linux and Novell in combinations where technically possible - SetupBatcher can now transfer passwords (hashes) from -
    • Linux <-> Linux (any hash)
    • Samba <-> Samba (any hash)
    • Linux -> Novell NetWare (supported by NMAS: SHA, SSHA, MD5, Unix Crypt)
    • Windows <-> Samba (ntpassword MD4, lanman)
    • Windows <-> Windows (ntpassword MD4, lanman)
  • Windows server commands -
    • "Data.Get.SAM.PasswordHashes", "Account.Edit.PasswordHashes" - export and import passwords (hashes).
    • Improved "AD.Account.SetGroups" - possible to keep membership of all groups in a special OU by specifying the word "keep" and the Path to the OU.
    • Improved "Exchange.2k.Group.SetProperty" - manages binary values, "msExchHideFromAddressLists" attribute defined.
    • Improved "Data.Get.AD" and "Data.Get.AD.Find" commands - can now extract data from any remote untrusted domain server with user name and password from latest "LogonAs" command.
    • Fixed "Data.Get.SAM" - stopped after 5500 accounts.
    • Fixed: "Account.Create" and "Account.Edit" with long in-parameters could result in strange behavior or even a program crash.
  • Novell commands and functions -
    • "Nov.GW.DL.Create", "Nov.GW.DL.Delete", "Nov.GW.DL.AddObject", "Nov.GW.DL.RemoveObject" - manages GroupWise distribution lists.
    • "Nov.LDAP.Logon", "Nov.LDAP.SetSimplePassword" - sets NetWare simple password - import password hashes from Linux.
    • "NDpathToLDAP" function - converts from NDS path to LDAP path.
    • Improved "Nov.GW.Account.SetProperty" - possible to set MailboxExpDate / disable GW accounts, set Visibility
    • Improved "Data.Get.ND", added "add" parameter - add data at the end of the [Data] section instead of replacing the entire [Data] section.
  • Linux and Samba commands and functions -
    • General account, group and OU management: "Lin.DS.Logon", "Lin.DS.Op.Init", "Lin.DS.Op.SetProperty", "Lin.DS.Op.Commit", "Lin.DS.Object.Delete". SetProperty also sets password hashes.
    • Group management: "Lin.DS.Group.Create", "Lin.DS.Group.AddObject", "Lin.DS.Group.RemoveObject".
    • OU management: "Lin.DS.OU.Create", "Lin.DS.OU.MoveObject"
    • Remote Linux shell commands: "Lin.SSH.Logon", "Lin.SSH.Command" - create home directories, set permissions etc.
    • "Data.Get.LD.Find" - searches Linux Directory and fills the [Data] section with any combination of attributes, including password hashes, for matching objects.
    • "LDvalue" - returns directory object property from directory path.
    • "LDpathFind" - finds out LD path for an object from any unique property.
    • "BuildRID" - builds Samba RID from uidNumber or gidNumber.
  • General commands and functions -
    • "LogWindow.Write" command - writes a message to the log window
    • "RaiseError" command - throws an error with specified error code and message
    • "$c" pre-command switch - call a subsection before a command is executed - solves problem with dynamic variables in some cases containing undefined values when script resumed.
    • "InputBox" function - displays an input box where user can enter a string
    • "Chr" function - returns specified ASCII character
    • "Col" function - converts a numerical variable to the %colX% format
    • Improved "Data.Column.DupeCheck" command - possible to list duplicates in a column.
    • "Data.Write" can now also be used in [Batch] and [Undo] sections
    • Improved pronounceable password generator - can now also pick random whole words from two different text files - suitable for creating passwords for very small children etc.
    • Fixed "Auto format code" function hang editor if Gosub in eternal loop
    • Fixed: "Remove markers" function and "BatchSettings.MarkersAutoRemove" setting did not remove markers in SubSection if "$i" pre-command switch on calling Gosub row.
    • Fixed: all functions - row with function name in string before actual function caused function to fail (very rare).
    • Fixed - script wizard inserted a comment that said "Shift+F1" for command help while it should read just "F1".

4.05 (6.05)

  • Much enhanced script wizard -
    • When creating AD accounts - added: import data, generate account names, check for duplicate account names, generate passwords, print password sheets, set group membership, create and share home directories.
    • When editing AD accounts - added: - set group membership.
  • New AD command - "AD.Account.SetGroups" - adds the account to up to ten groups at once, sets primary group, removes the account from groups not listed.
  • New Novell commands -
    • "Nov.DS.Alias.Create", "Nov.DS.Alias.Delete" - creates and deletes Novell aliases.
    • "Nov.DS.Object.CopyGroupMembership" - copies group membership between Novell objects.
  • Fixed some more "comma in common name" AD command problems.

4.04 (6.04)

  • New commands and functions -
    • "Registry.Key.Create" - Creates registry key.
    • "Registry.Key.Delete" - Deletes registry key (also possible to delete all subkeys).
    • "Nov.Vol.SizeLimit" - Sets a space limit on a NetWare volume subdirectory.
    • "Nov.DS.Object.Rename" - Renames NetWare object.
    • "Nov.GW.Account.Rename" - Renames GroupWise user account.
    • "Nov.GW.Account.Reconnect" - Reconnects GroupWise user account with NetWare user account after NetWare user account move or rename.
    • "Nov.GW.Account.SetProperty" - Sets or edits GroupWise account properties.
  • Improved commands and functions -
    • "System.Reboot" and "System.Shutdown" - now possible to specify timeout value, timeout message and whether applications with unsaved changes are to be forcibly closed.
    • "Service.Control" - possible to set startup mode - automatic, manual or disable.
    • "Data.Show" - added window caption parameter.
    • Script wizard - "Modify user accounts" mode - added "Extract common names" checkbox - check to add "Data.Get.AD" command that automatically fills [Data] section with all common names in selected container. Also added hidden properties "$EmployeeID", "$Division", "$NameSuffix", "$OtherName", "$NamePrefix" to property dialog.
  • Fixed -
    • ADpathFind, ADvalue - did not work for objects with commas in common name.
  • Added Novell example "Force users to change password" to the manual.

4.03 (6.03)

  • Text editor -
    • Possible to print scripts (Ctrl+P). Syntax is highlighted on printout.
    • Default save function (Ctrl+S) is now "save". Added "save as" function (Ctrl+Alt+S).
    • A backup copy of last file with same filename is now automatically created when saving a file. The backup has a "~" character inserted before the extension.
    • Cursor position restored after script executed.
    • Auto format code (Ctrl+E) - makes the code easier to read - automatically indents code inside loops, if statements and vbscript sections. The function also sets correct character case in commands.
  • New commands and functions -
    • "AD.Group.SetMembers" - sets or edits an entire group member list from the contents of a text file.
    • "Registry.Delete" - deletes registry value.
    • "Registry.Write" - adds or edits DWORD, SZ, EXPAND_SZ, MULTI_SZ and BINARY registry values. ("Registry.Write" has replaced "Registry.Write.Dword" and "Registry.Write.String".)
    • "ExpEnvStrings" function - expands environment-variable strings and replaces them with their defined values. Works both locally and on remote machines.
  • Improved commands and functions -
    • "AD.Group.Create" - now also supports distribution groups - domain local, global & universal.
    • "ADValue" function - now supports any type of object - groups, computers etc. - not just accounts.
    • "Exchange.2k.Group.SetProperty" - can now set any text value.
  • Fixed -
    • "AD.Account.SetProperty" - was not possible to specify values for AccountExpires and account flags like PWMustChange etc. from [Data] section.

4.02 (6.02)

  • "GoSub" command - jumps to a subroutine (subsection).
  • "Data.Series.Generate" command - clears the [Data] section and generates a number series in specified column.
  • "Data.Get.FileList" - fills the [Data] section with file details from a disk directory. Use to perform operations depending on file details, example: move or delete all files of a certain type or size not accessed in a long time.
  • New AD commands and functions -
    • "Data.Get.AD.Find" - searches Active Directory and fills the [Data] section with any combination of properties for matching objects.
    • "ADpathFind" - finds out ADpath from any unique Active Directory property.
  • New Novell commands and functions -
    • "Data.Get.ND.Find" - searches Novell Directory and fills the [Data] section with any combination of properties for matching objects
    • "NDpathFind" - finds out NDS path from any unique eDirectory property.
    • "Nov.DS.Group.RemoveAllObjects" - removes all members from a NetWare group.
    • "Nov.DS.Object.SetGroups" - sets or edits NetWare object group membership.
    • "Nov.GW.Account.SetPassword" - sets GroupWise user account password.
    • Improved: "Data.Get.ND" - now returns NDSpath directly.
  • Fixed:
    • A script line (inside all sections and outside sections) containing a three-character sequence of space+underscore+any other character hung SetupBatcher when script started.
    • Script lines longer than 255 characters (inside all sections) could in some cases be ignored or result in strange error messages.
    • Else part of "If...Then...Else" statements did not work when nested if statements in both if and else part.
    • "VBScript.Begin..End" commands executed when job restarted even though markers indicated all OK.
    • "Nov.DS.Account.SetPassword" did not work as expected.
    • "Data.NextLoop" was not possible to use in other sections than [Batch] even though manual stated otherwise.
    • "Data.Show" was very slow when dealing with many [Data] rows.
    • "Data.Get.AD" returned incorrect "ADpathContainer" and "ADpath" on Windows server 2003.
  • Added Novell examples to the manual - generate short and unique user names, generate random pronounceable passwords, edit accounts, change passwords, copy data NDS<->AD.

4.01 (6.01)

  • Improved "Registry.Write.DWord" and "Registry.Write.String" commands - now possible to write to HKEY_CURRENT_USER on remote machines.
  • New AD command -
    • "AD.Account.CopyProperties" - copies specified AD properties from one account to another.
  • New Novell commands -
    • "Nov.DS.Object.CopyProperties" - copies specified NDS properties from one object to another.
    • "Nov.Vol.Quota.Set", "Nov.Vol.Quota.Remove" - manages Novell volume quotas.

4.0 (6.0) - auto-retry scripts, support for Novell NetWare and GroupWise

Q: Is it possible to use scripts written for SetupBatcher 2.x / 3.x? A: Yes, the syntax for old commands has not been changed.

  • Auto-retry mode: the batch job runs without questions until all commands in fact has been executed on all machines in the [Machines] section. This makes it easy to execute commands on many machines and to make sure that the job has been done, without supervision. Examples: change workstation passwords, edit the registry etc.
  • Novell commands and functions -
    • Account management: "Nov.DS.Account.Create", "Nov.DS.Account.Delete", "Nov.DS.Account.SetPassword", "Nov.DS.Object.SetProperty"
    • Group management: "Nov.DS.Group.AddObject", "Nov.DS.Group.Create", "Nov.DS.Group.Delete","Nov.DS.Group.RemoveObject", "Nov.DS.Object.SetProperty"
    • OU management: "Nov.DS.OU.Create", "Nov.DS.OU.Delete", "Nov.DS.OU.MoveObject", "Nov.DS.Object.SetProperty"
    • GroupWise: "Nov.GW.Account.Create", "Nov.GW.Account.Delete"
    • Trustee management: "Nov.DS.Object.AddTrustee", "Nov.Vol.AddTrustee", "Nov.Vol.RemoveTrustee"
    • Fill [Data] section with multiple property values from many Novell objects: "Data.Get.ND"
    • Extract a single Novell property value: "NDValue" function
  • Fixed:
    • DOS and DOSR displayed returned foreign (non-English) characters incorrectly.
    • Was not possible to interrupt some initial checks with the "Esc" button
    • Word wrap in log window lost (since 5.07)