ConfigMgr OSD FrontEnd – Version 1.3.0 released

We’re proud to announce the release of ConfigMgr OSD FrontEnd version 1.3.0.


More information about ConfigMgr OSD FrontEnd is available on the following page, including download link and release notes:

ConfigMgr OSD FrontEnd

What’s new

Below is a list of enhancements and new features made available in this release:

  • This version brings a new user interface with many improvements that allows for instance the Regional header name to be 12 characters instead of 8. The overall layout of the frontend now has the menu on the left side instead of at the top. Sections now allow for more settings to be added including more menu sections for future releases.
  • For the Computer section there’s a new Validate button that performs an Active Directory computer object lookup to see if the specified name already exists.
  • A new section named Authenticate have been added providing the capability to authenticate a user in Active Directory. User name, password and domain name are used in combination to securely and encrypted validate the user if he or she is a member of a specific Active Directory group. Members of the group that is configured in the application settings for the frontend application are allowed access to continue with the deployment. Each login attempt through the frontend is logged in the event log for the frontend.
  • Visible task sequences in the drop-down menu for the Deploy section can now be restricted based upon Active Directory group memberships. This require additional configuration and only works when the Authenticate section is enabled, so see the detailed instructions further down in this document for how to use this new capability.
  • For the Apps section, there’s quite a few changes made in this version. Instead of requiring additional deployments for applications to show up in the frontend, applications being shown in the tree view are now based on a new XML file named AppConfig.xml that defines the folder structure and the administrative category in Configuration Manager associated with a folder. This change allows for a custom folder layout within the tree view and easier management of what applications are shown. Apps section is now also loaded directly when the frontend has started.
  • In the User section, it’s now automatically loads the existing UDA relations for the device when there are any available. They’re shown in a data grid similar to what’s used for the Roles section. It’s also possible to clear these existing relations, for scenarios like when the device is re-assigned to another user.
  • FirmwareType and BIOS version properties have been added to the Computer Details.
  • Aspect propertions for the logo.bmp file is now 160x90px.
  • There’s a new application setting named ComputerDetectionType that controls the property used from WMI when the frontend is attempting to identify the computer it’s running on. Previously, this was hard-coded for the UUID (SMBIOS GUID), but it can now be set to the MacAddress also, if needed.
  • xml file has been renamed to RegionalConfig.xml to follow the same naming standard as the rest of the XML files loaded by the frontend.
  • Sample code for running DaRT is now available in the PrestartCommand.ps1 file.
  • An error is now shown when the Apply button is clicked, but there’s no task sequences selected.
  • All referenced assemblies that previously was external to the frontend are now embedded in OSDFrontEnd.exe.
  • Removed application settings from the OSDFrontEnd.exe.config file:
    • AppCollectionID
    • HeaderText


ConfigMgr OSD FrontEnd 1.3.0 requires ConfigMgr WebService 1.5.0. You can download ConfigMgr WebService from below:

ConfigMgr WebService 1.5.0

Documentation and usage

Embedded in the download package for ConfigMgr OSD FrontEnd is a PDF file called ConfigMgr OSD FrontEnd 1.3.0 – Documentation. This file contains all the information regarding how to get started, detailed explanation of how to use the frontend and some tips and tricks.

Nickolaj Andersen

Chief Technical Architect and Enterprise Mobility MVP since 2016. Nickolaj has been in the IT industry for the past 10 years specializing in Enterprise Mobility and Security, Windows devices and deployments including automation. Awarded as PowerShell Hero in 2015 by the community for his script and tools contributions. Creator of ConfigMgr Prerequisites Tool, ConfigMgr OSD FrontEnd, ConfigMgr WebService to name a few. Frequent speaker at conferences such as Microsoft Ignite, NIC Conference and IT/Dev Connections including nordic user groups.


  • When are you releasing next version of OSD Frontend?
    We have some trouble with regional settings when using 30 different settings.

    • Hi Nicklas,

      It’ll be released this week. The issue you’re referring to should also be fixed, if it’s the issue I’m thinking about.


  • Hello Nickolaj,

    Is there any possibilities to create a section for choosing the hard drive. We have a lot of PCs with multiple hard drives and it`s very important for us.
    I`ve tried to use a prestart command with a custom ps1 script but the variable OSDisk hasn`t been declared.

  • Hello Nickolaj,

    Is there any possibilities to create a section for choosing the hard drive. We have a lot of PCs with multiple hard drives and it`s very important to us.
    I`ve tried to use a prestart command with a custom ps1 script but the variable OSDisk hasn`t been declared.

  • Hi Nickolaj,

    Tried to implement this in a lab environment following the guide. However I’m getting a similar error launching the FrontEnd with error ‘Unable to load configuration file for applications’.

    Confirmed ‘Everyone’ has read access to the Share and NTFS, tried disabling the firewall etc. Assuming it is something simple that I am missing

    • Hi Mark,

      I’m not sure what you’re meaning with Share and NTFS permissions. The various XML files are either loaded from within the same folder where the frontend is executed, or if specified in the OSDFrontEnd.exe.config file to load them from an URL (which is added as a sample URL in the original file you downloaded).


  • Hi Nickolaj,

    When we use the OSD Front End in our task sequence, we receive a message that no task sequences are available. However, running the task sequence independent of the front end and the task sequence is presented without issue.

    BTW….I love the product and all of your good work. I’m anxious to get this working so we can finally rid ourselves of a competing internal solution.

    • Hi Paddy,

      How have you made the deployments of the task sequences available for the computers? This is what I generally do:

      Scenario: Support unknown computers
      Collection: OSD – Windows 10 Enterprise – Unknown Computers
      Usage: This collection is a replica of the All Unknown Computers for all unknown computers
      Deployments: All task sequences that should be available deployed as hidden for PXE or media only

      Scenario: Support existing computers for re-imaging
      Collection: OSD – Windows 10 Enterprise – Known computers
      Usage: This collection should contain all computers that should be able to be re-imaged
      Deployment: All task sequences that should be available deployed as hidden for PXE or media only

      This always works well.


  • Hi Nickolaj,

    Just wondering if there would be an option to also include packages as AppsTaskSequenceVariableName ? We still have a lot of packages, and would love to select them during install as with the Application variable through the frontend. Maybe I’m missing something , but any input would be appreciated.

    • Hi,

      I’d strongly suggest that you migrate to the application model. There’s been tons of enhancements made to the application model and nowadays it’s very stable, as opposed to a couple of years back, when using it in a task sequence. Problem with Packages is that, I’d have to build another logic to detect them, as you can’t assign any “labels/categories/etc” to them like I’m doing for the Applications. I hear your request, and will see what I can find out.


  • When “Set Computer Name by Script” is enabled manually updating the Computer Name field has no effect on the OSDComputerName TS variable.

    Is that by design, or a bug that will be fixed in a future release?

    • Sorry, this issue is on our end. Our TS was still running the script to set the variable for the stock UDI wizard so it was overwriting the one provided by the frontend.

  • Really struggling to make this work. Some of our machines are taking awhile to get DHCP 20-30 seconds and the Frontend errors complaining it could not connect. Yet if I rerun it later from cmd prompt it works after the network connectivity is there. I tried increasing the web service timeout but that seemed to not have an effect.

  • Such an awesome tool. Thanks for your hard work and sharing it! I’m aware we can use the “region” tab to create custom Task Sequence Variables. It would be great if it would be able to change the GUI (1 custom tab for instance) and we could add controls (combobox) and could write the selected values to a Task Sequence variable. This would be helpful in the following scenario: A company has 3 profiles: “HR”, “Sales”, “IT”. In the task Sequence, I would like to install a pre-defined list of applications/configure registry keys/Add computer to specific CM collections using your webservices/.. based on the selection of these profiles in the FrontEnd. What’s your opinion about this functionality?

    • Hi Sven,

      Sorry for the late reply. You could basically do that as of today with the current implementation of the “Region” tab. You can even change it’s name shown in the frontend. Let me know if you want me to get into more details.


  • Hi Nickolaj Andersen,

    First and foremost wanted to thank you for all your work on this. It is absolutely the best thing since sliced cheese, well to me anyways. Just a enquiry i have as it is something i have with struggled with. I have hosted the HWconfig, regional config and appconfig xml files on the web server as it is easily accessible during the build process but also readily available and easy to modify on the fly with the ever changing landscape. We also use the script method of naming the computers however this is injected into the bootdisk which is where my problem arises.

    Our organisation is constantly changing hardware or getting new models so it means that each time that happens we have to modify the script and then play around with the boot disk and then redistribute and then retest. It leads to a whole bunch of modifications and time to confirm its actually working and we didnt make a mistake. Is it possible modify the OSDFrontEnd.exe.config and specify the location of the computername script so we dont have to have it injected into the bootdisk itself, like maybe host it on the webserver along with the rest of the config files? Below a section of the script we run to give a idea on how we name our clients. Any advise on if this is possible or what we may need to change would be greatly appreciated.

    # WorkStation
    if (($ComputerModel -match “OptiPlex 9020”) -OR ($ComputerModel -match “OptiPlex 7040”) -OR ($ComputerModel -match “OptiPlex 7050”)) {
    $OSDComputerName = “WS” + “-” + $SerialNumber
    $TSEnv = New-Object -COMObject Microsoft.SMS.TSEnvironment
    $TSEnv.Value(“OSDComputerName”) = “$OSDComputerName”
    # OptiPlex 9020 = Dell Optiplex Desktop 9020
    # OptiPlex 7040 = Dell Optiplex Desktop 7040
    # OptiPlex 7050 = Dell Optiplex Desktop 7050

    # Tablet
    if (($ComputerModel -match “Venue 11”) -OR ($ComputerModel -Like “Surface Pro*”) -OR ($ComputerModel -match “Latitude 7275”)) {
    $OSDComputerName = “TB” + “-” + $SerialNumber
    $TSEnv = New-Object -COMObject Microsoft.SMS.TSEnvironment
    $TSEnv.Value(“OSDComputerName”) = “$OSDComputerName”

    # HyperV
    if ($ComputerModel -match “Virtual Machine”) {
    $OSDComputerName = “HV” + “-” + “TestBuild”
    $TSEnv = New-Object -COMObject Microsoft.SMS.TSEnvironment
    $TSEnv.Value(“OSDComputerName”) = “$OSDComputerName”

    $Name = “$OSDComputerName”
    Start-Sleep -Seconds 5
    Write-Output $Name

    Once again thanks for all the great work

    • Hi Daniel,

      Sorry for the late reply. There’s no simple answer to your request, other than I can look into building a custom version of the frontend for you if you’d be interested in that. Contact me on [email protected] and we can continue with the conversation. The non-simple answer is that I’d need to find a way for the PowerShell runspace created from inside the frontend to first be able to download the ps1 file and then locally execute it.


  • Is there any way to lock the “Computer Name” field, so that users are not able to type in this section?

    In our environment, we use a script during the task sequence that will name the machine using a standard naming convention, so I wouldn’t want the user to think that they could create a custom machine name when using this front end, then later wonder why it didn’t work.

    • Hi Danny,

      Yes, this has been requested quite a few times and I’m happy to say that it’ll be available in ConfigMgr OSD FrontEnd 1.4.0 that will be released before the summer.


  • Hello. If I run OSDFrontEnd in debug mode, I can see all available deployments, but if I run OSDFrontEnd in PXE, my deployment list is empty. How would I go about validating and ultimately correct the issue? Thank you

  • Thanks for a great update Nickolaj.
    Any chance you can add a future option to make the text field for computer name non-editable or even hid the whole Computer tab?

    Also, when re-running the preflight-checks, the previous button is enabled. Pressing it seem to crash the application.

  • I added 50 regions to the xml and the application appears to crash when loading the regions tab. is this a known issue?

  • We have some issues with OSD FE 1.3.0 with computers where the WinPE resolution is such that the GUI cuts off the ‘apply’ button to start imaging, as well as removing the gear for the admin menu. Is there any way to scale the GUI to fit the screen? Our techs have found that pressing Enter will select the ‘apply’ choice, but selecting the gear involves lots of tab and hope.

  • Hi Jim,

    Our team likes the new version options and are in the process of testing. We had a few questions.

    For UIAccent, would it be possible to have Black as an option?

    While testing with version 1.2 we noticed that the interface fails to launch on Virtual computers. Would support for Virtual computers be possible in the future?

    Thank you,

    Kelvin Lehrman
    Systems Administrator
    The University of Iowa

    • Hi Kelvin,

      Unfortunately I can’t add any accents. What’s possible today is what’s available in MahApps (the UI framework used for the application). It’s absolutely supported to run on virtual machines, I have it running in my Hyper-V lab at home for instance. However, you’d need to assign the virtual machine at least 3GB of memory, preferably 4GB or it might crash.


  • Thanks for this. I don’t see a download link on TechNet. Has this been uploaded yet?


Categories use cookies to ensure that we give you the best experience on our website.