UI++ is a better way to display information to the interactive user, solicit input from that same interactive user, and populate task sequence variables during System Center Configuration Manager (ConfigMgr) Operating System Deployment (OSD). UI++ can also solicit user information outside of task sequences because, at its heart, UI++ is simply a generic UI framework. It’s still great during task sequences, but its certainly not limited to them.

Nearly every aspect of UI++ is customizable including the number of dialogs, colors, icons, and the exact text to display — everything shown is up to you. Examples of information commonly requested from users include the system name, OU selection, and application selection.

Download UI++Version: Download UI++Documentation
  • A customizable look and feel.
  • Information displayed using HTML formatting.
  • User input in combo boxes, check boxes, and text boxes validated using regular expressions.
  • Automatic variables and system information collection including model, hardware type, TPM, CPU, hypervisor, and more.
  • Read from and write to WMI.
  • Read from and write to the registry.
  • A task sequence variable browser and editor.
  • Conditional execution of every element based on VBScript.
  • Inline variable replacement for any value using task sequence variables.
  • Active Directory authentication and authorization.
  • Customizable preflight checks and warnings.
  • An AppTree that will display and allow selection of both Applications and Packages.
  • Software discovery and mapping to ConfigMgr Applications or Packages.
  • State save and load to and from a data file.



  • Released: 7 December, 2018
  • Zip download file hash (SHA256): 0882B506BAB9AE6051909B6FFC190D3751FB786EFC80D6D6B3F6D8CE0ED70649
  • UI++.exe file hash (SHA256): D4DE8D87709B4F92ABEDCA73ADCCC1DF5F41DFB822A4DA5289A90B718F2A3920
  • UI++64.exe file hash (SHA256): 08BCD93DAAB6EDE443B03878BDC5651E3A5F6BD5DD96658079FCD81BC652E25B

Fixed (

  • Overlapping time countdown and next/OK button on a Preflight action dialog when all four buttons are shown.
  • Scaling of text on an InputInfo item properly accounts for two-line InputInfo
  • Visual C++ Runtime library .dll dependency.

Added (

  • Lenovo model detection during a DefaultValues action.
  • Optional removal of the sidebar from dialogs.
  • Active Directory computer name check.
  • The Preflight action can now display warnings in addition to failures.
  • The Preflight action can now have a countdown exactly like the Info
  • A refresh button to the Preflight
  • Horizontal scroll option to TextInput

Updated (

  • Separated LDAP functionality into its own DLL. Ensure that you now also include the FTWldap.dll file in any boot media, packages, or locations that you run UI++ from.
  • The dialog border color now matches the Color value set on the UIpp root element.
  • Flat dialogs now have a border.
  • The countdown timer for Info actions now appears to the right of the dialog buttons and includes only the time remaining.
  • The countdown timer changes color to orange when 25% of the time remains and red when 10% remains.
  • The DefaultValues action now recognizes ChassisTypes with code 35 and 36 as desktops.
  • Tooltips for Preflight check descriptions are now displayed using an info icon displayed before the item instead of on the text itself.

Fixed (

  • An issue where XHWChassisType was not set properly for virtual machines.
  • Random text color for InputText items.

Removed (

  • Customization or inclusion of a timer countdown message on the Info action.
  • Dialog Icons.



  • Released: 24 May, 2018
  • Zip download file hash (SHA256): A04C4A0EEC53424C40290BADB90515E6D0AE4E692765E5350D63FBB0311F9523
  • UI++.exe file hash (SHA256): 45056B10A056002B2BA4515B279EE2DEEF2E89A628BD6F3FE840E04A99A186C3
  • UI++64.exe file hash (SHA256): 2983AED3126895BE218E80A77C2E14728F7D33F7AE1DD1F359BC37FF9C9DC1E7


  • Regular Expression matches on Case elements within a Switch action now match on substrings instead of just the complete string specified in the OnValue attribute.
  • Reverted variable substitution behavior so that if a variable is not found, it is replaced by a blank value.
  • Variable substitution now replaces variables with environment variable values as well as task sequence variable values.
  • Environment variable values take precedence in cases of name collisions.
  • DefaultValues action determination of the XSystemUEFI variable’s value now matches what ConfigMgr does for _SMSTSBootUEFI.
  • InputInfo elements within a UserInput action now scale their font size based on the line length to accommodate longer strings.
  • The list box portion of a ChoiceInput now dynamically increases its width to show longer choices.
  • The edit box portion of a ChoiceInput now displays a tooltip if the user hovers over it and the choice selected is too long.


  • UserAuth action with the GetGroups attribute set to True successfully checked authentication but did not allow progress to the next action.
  • Condition evaluation bug where in some cases conditions based on single variable values did not correctly return True.

For all support requests, samples, hints, suggestions, discussion of whatever concerning UI++, please visit the forums.