WPNinjas HeaderWPNinjas Header

Enhanced OS deployment end message

Since I’m working with ConfigMgr there was always the question of the staging team or end users if the staging of a device has really completed. Many years ago, I created a script which solved this question. Now I got again a few requests of customer and also discussions at the #MMSMOA which could use the script too. Now I decided to make it publicly available so all of you can use it. Basically, the PowerShell script should be started in one of the last steps of the task sequence to gather all information correctly. It will do the following:

  • Collect data about the current devices:
    • OS Version
    • Installed Apps
    • Enabled Security Features like Virus Scan and Bitlocker
  • Adds this information as a logon message including a title which highlights that the staging ended successfully.
  • Changes registry permissions to allow a standard user to remove the logon script
  • Create an AutoStart entry which is reverting the logon message to empty and will also reset the permissions in the registry. Therefore, the message will only be displayed once.

It’s possible to extend the information on your own. If you think its valuable for others, please publish it also on Github.

The implementation just requires you to do the following:

  1. Download Script from Github https://github.com/ThomasKur/ModernAndSecureWorkplace/blob/master/ConfigMgrOSD/OSDEnableOSDMessage.ps1
  2. Add it to a Package in ConfigMgr
  3. Add Run PowerShell Script step to Task Sequence and specify the package and script name.
  4. Start the first device and execute the OSD task sequence

Now it’s ready to use and the result is an OSD end message which looks like this:

Follow me


Hamil · June 4, 2019 at 22:01

I just have implemented this in my Dev Environment and it is simply superb.
Forgive me for asking this, will you be able to share the entire sequence for us to import? I’m just kinda curios to know what you’ve baked in the “Install Updates” step.

    Thomas Kurth · June 4, 2019 at 22:17

    The Install Updates step is just the default Update Install update step as created with the default Task Sequence. So nothing special. Or do you face a specific issue in your dev task sequence?

kevin · September 30, 2020 at 10:48

tried the powershell, but get error on writeLog function.

    Thomas Kurth · September 30, 2020 at 13:31

    Can you share a little bit more information about the error?

      bengt · January 21, 2022 at 13:57

      Can you show this information as a statuspage for OSD in the end of the task and not only before first login

        Thomas Kurth · January 28, 2022 at 22:09

        It depends on the OS. With Win 8 and 10 the Logon Message is shown before the user enters the username. But you should try if it fulfills as you like it.

bengt · January 26, 2022 at 14:49

Can this be shown as a stauspage in the end of the sequence?

    Thomas Kurth · January 28, 2022 at 22:07

    Yes, on the first Login

Zay · July 14, 2022 at 17:16

I love this and implemented it. The only issue, well not really an issue, more of an esthetic preference, is that it looks like the BSOD and my techs freak out at first glance. Is there a way to change the background color or image to something more “friendly”?

    Thomas Kurth · August 22, 2022 at 21:50

    To my knowledge not. Perhaps by adjusting the Windows theme

zzy · July 16, 2022 at 17:03

This is amazing, and I have implemented it into my OSD process. Is there any way to change the font color and also the background? I would love to use our company picture to make it more customized.

    Thomas Kurth · August 22, 2022 at 21:50

    To my knowledge not. Perhaps by adjusting the Windows theme

Zay · December 16, 2022 at 21:53

I may have missed it in the script, but does this or can it also output to a text file?

Leave a Reply

Avatar placeholder

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.