Menu
CCMEXEC.COM – Enterprise Mobility
  • Home
  • General
  • Configuration Manager
  • Windows 10
  • Windows 11
  • Intune
  • GitHub
  • About
CCMEXEC.COM – Enterprise Mobility

TSBackground for ConfigMgr

Posted on June 12, 2019April 3, 2021 by Johan

Do not miss this eye candy, TSBackground for ConfigMgr, that also adds security to your deployments.

We are all familiar with the ConfigMgr standard TSProgresUI, which makes a great job but perhaps is not so aesthetically appealing.

TSBackground is the successor of “OSDBackground” that we published a couple of years ago. This new version addresses known issues as well as adds a lot of new functionality requested, including replacing the built-in ProgressUI. The first picture shows a design that we recently made for a customer. Apart from the more complicated controls, such as the progress bars, everything is customizable. TSBackground can show fixed text in combination with the content of any TS variable in any color, font and location you desire.

Debug

TSBackground has password protected debug features built in. Just right click the upper left corner of the screen, type your password and gain access to the debug tools.

This makes it possible to disable the F8 command support that we technicians love but frequently forget to turn off once a new boot image is put in production. This is a huge advantage as anyone with the right skills will be able to dump sensitive information from your environment so long as it is enabled.

Configuration

TSBackground is fully configurable with respect to graphic layout, you can make it appear in almost any way or fashion that you like. This comes with the price of not being done just as easily as it was with the old “OSDBackground”, but if you willing to spend a little time and read the manual carefully you will surely get what you want.

When the application is launched the layout is loaded from .xaml files located in a dedicated sub folder. There are some “rules” that needs to be honored, naming is one, including the standard xmlns namespace in every top grid is another. Study the included standard files (General.xaml and Status.xaml) and consult the manual for more in-depth information on how to modify or create these files. A “Design Viewer” is available in the “Tools and Script” folder, this will help you assure that your file(s) are valid before tested in a Task sequence.

Setup

To avoid having to download the binaries TSBackground is best included in the boot image and later, in the Task sequence, transferred to the OS disk just before “Setup Windows and ConfigMgr”.

Boot image

The manual explains how to add the files to the Boot image, this is done on the “Customization” tab.

Launch in PE

The recommended method to launch the application is by injecting a custom winpeshl.ini file into the boot wim – this sounds difficult but is only a matter of placing a file (included in the download) in a folder, update the image and then remove the file. The manual explains this. This method is preferred and recommended as the injected file, including the launch command, automatically runs on every boot to Windows PE. This means we do not have to bother about putting in extra steps to start the application after for example a bios update or configuration.

Start in full OS (Windows)

To re-start TSBackground at the earliest possible moment when the computer enters full OS we recommend adding a “RunSynchronousCommand” to the “unattend.xml” file.

This is very well described here, so we will not spend more time on it:

https://docs.microsoft.com/en-us/windows-hardware/customize/desktop/unattend/microsoft-windows-deployment-runsynchronous-runsynchronouscommand

In short you should add the following command, adjust “Order” according to your environment, to your unattend.xml file:

A fully functional (Windows 10 x64, en-US CST) file is included in the download as an example.

Task sequence

To test this and visualize where (aprox.) to put the various steps related to TSBackbackround we used the wizard to create a standard TS. We also added basic error handling which has been covered earlier on this blog, https://ccmexec.com/2016/12/error-handling-in-ts-without-mdt-using-osdbackground/

The green dots mark TSBackground related steps.

Summary

As you understand this tools / utility does not solve any technical issues, but it does add an extra security layer with regards the F8 Command support and it sure looks nice. We have already seen some very nice custom layouts and backgrounds circulating on Twitter, one that really stuck out was made by the admins over at Minnesota IT Service (Chris Molstad).

TSBackground can be downloaded from Onevinn – Applications (schrewelius.it) and comes with and extensive manual as well as several tools to help you design your own favorite “TSBackground”.

Onevinn – Featured (schrewelius.it)

Make sure to follow us on Twitter, if not already, for news on this and other tools:

@ccmexec and @Josch62

102 thoughts on “TSBackground for ConfigMgr”

  1. Rohit Chaudhary says:
    June 16, 2019 at 5:38 pm

    its given me .net 4.6.2 missing error after boot in winpe while trying to execute TSBackground

    Reply
    1. Johan says:
      June 17, 2019 at 12:26 pm

      Please consult the manual, specifically “2. DESCRIPTION AND REQUIREMENTS”; it seems like you’re missing the “Optional components”.

      Reply
  2. Kris says:
    June 21, 2019 at 10:06 pm

    Is there a way we can run this with USMT and starting from Software Center. I’ve tried an always have it throw an error.

    Reply
  3. Chris says:
    July 11, 2019 at 5:45 pm

    Hi Johan,

    I’ve been reading up on this and am excited to try to have this awesome layout working in a dev environment. I believe I have everything set correctly, but I think one issue I’m coming across is related to the “12. START IN PE (WINPESHL.INI) – RECOMMENDED” step.

    I’ve added WScript.Quit(0) to the prestart commands, and have added the source directory with the boot files. I’ve also added WINPESHL.ini i386 and x64 to my configinstall\osd\bin\i386 and \x64 folders, and updated the boot image and distribution points afterwards.

    After that, I updated our USB boot image, and attempted to boot into SCCM to start an OSD, but it gets to the standard SCCM GUI, and reboots itself within a few seconds.

    Any ideas what would cause that or what logs I might be able to pull in this situation?

    Reply
  4. TDA says:
    July 18, 2019 at 4:51 pm

    Hello,
    Thanks for the article!
    So far I was able to configure all perfectly apart from the COMPUTERNAME isn’t showed.
    What it could be?

    Reply
    1. Johan says:
      July 18, 2019 at 7:57 pm

      The sample General.xaml binds to “OSDComputerName”, if you don’t set that TS variable during you deployment there will be nothing to show, try changing it to “_SMSTSMachineName”.

      Reply
  5. Roman says:
    August 2, 2019 at 11:39 am

    Hello.
    Can i use it in mdt task sequence? Where should i put thoose steps?

    Reply
  6. Nick W says:
    January 2, 2020 at 6:47 pm

    Is there any chance you have any plans for making this work on people who don’t use SCCM and simply use Windows Deployment Server and Microsoft Deployment Toolkit? This looks absolutely incredible!

    Reply
    1. Jörgen Nilsson says:
      January 10, 2020 at 1:12 pm

      Hi,
      Currently no 🙁
      Maybe

      Reply
  7. Joe T says:
    July 1, 2020 at 3:36 pm

    i am trying to implement this to test it out and i am getting an error with the TSBackground Init. it is failing at the first step. does anyone have any sugguetions. i am scratching my head.

    Reply
  8. Andreas says:
    August 14, 2020 at 12:06 pm

    Hi Jörgen,
    we want to use TSBackground for our TS, but we have one show stopper. In the “prepare Computer System” step we disable the UEFI Network Stack of our Dell Latitude devices with command line “cmd /c cctk –uefinwstack=disable –ValSetupPwd=********”. When the command run TSBackground freeze instant and the osd stands still, connection to TSBackground Remote Control lost too. Every other command cctk command is running well, only uefinwstack isn’t working, but we need it to avoid a boot loop.

    Kind regards

    Sorry, posted my question in the wrong blog article before

    Reply
    1. Johan says:
      August 14, 2020 at 12:50 pm

      There has been some issues when TSB freezes during heavy load or disk manipulation(s); we haven’t tested your exact scenario but think there’s good hope that it’s solved in the latest version, available here: https://onevinn.schrewelius.it/

      Reply
  9. Andreas says:
    August 14, 2020 at 2:11 pm

    Hi Johan, thank you for fast reply. I tried the new version but the freeze is still there. If I run the task sequence without TSBAckground or only disable the step with TSBackground, it worked like a charm. Thank you for your help.

    Reply
    1. Johan says:
      August 14, 2020 at 2:38 pm

      “disable the step with TSBackground”, tells me your not using the recommended method (winpeshl.ini) to launch TSB. Correct me if I’m wrong?

      If that’s the case, the application is probably running from the HDD, not from the RAM drive (X:) and can be expected to crash/freeze etc. when you run fiddle with the drive.

      Reply
  10. Andreas says:
    August 17, 2020 at 9:21 am

    Hi Johan, sorry for the misunderstanding. I missed one word in my sentence. To load the TSBackground i only use the recommended method (winpeshl.ini).

    Running Task Seqeuence without TSBackground – everything is working like a charm
    Running Task Sequence with TSBackground – System Freeze after this command “cmd /c cctk –uefinwstack=disable –ValSetupPwd=********”
    Running Task Sequence with TSBackground and disable only the affected CCTK command -everything is working like a charm

    I tried the Dell cctk in Version 4.1 and 4.3 without any luck.
    The cctk command disabled the uefi network stack successfully but freeze instant.

    Reply
  11. Andreas says:
    August 27, 2020 at 10:10 am

    I tried another way and used the Dell command powershell provider.
    Set-Item -Path DellSmbios:\SystemConfiguration\UefiNwStack “Disabled” -Password %DellBiosPW%
    Same problem like with cctk tool before. 🙁 Freeze!
    TSBackground is not useable for us very pitty

    Reply
  12. Andreas says:
    August 28, 2020 at 12:47 pm

    Sorry for spaming you comment area 🙂 An Edit function would be nice 🙂
    I get it to work! My test device is faulty and freeze when you change the state of the UEFI NW Stack.
    I just wanted to share that! Thanks for TSBackground

    Reply
  13. Nicklas says:
    August 31, 2020 at 4:05 pm

    Hi,

    We are currently implementing version 3 of TSBackground but after first reboot TS Background is never launched. Step Copy TSBToHdd is running before Setup and ConfigMgr client.

    Before first reboot I can see that the TSBackground folders exists in C:\Windows\Temp
    TSBackground folder is gone from C:\Windows\Temp after first reboot.

    Any idea why not TSBackground is not launching after first reboot or why the files are removed from C:\Windows\Temp after first reboot?

    We have used TSBackground 2 without problems.

    Thanks for a great tool! 🙂

    Reply
    1. Johan says:
      August 31, 2020 at 5:17 pm

      That would be expected if the >>old<< RunSynchronous command is still present in the unattend.xml file... Or the package containing the file has not been redistributed.

      Reply
  14. Nicklas says:
    September 2, 2020 at 10:13 am

    Thanks for the qucik replay Johan. We have never used RunSynchronous command to start TSBaackground after first reboot we went with the commandline to start it with.

    I have redistributed the boot image again with new downloaded files to be certain it contains all the
    updated files. Where should the step “copy TSBToHDD” copy the files to?

    Thanks in advance 🙂

    Reply
    1. Johan says:
      September 2, 2020 at 10:39 am

      Ok, remember that MK III differs a bit from the older version and you should read the manual carefully – it’s crystal clear on where to put the the “CopyTSBToHDD” step. And please, be sure to follow recommendations, no other implementations have been tested, so your pretty much on your own if not…

      Reply
  15. Nicklas says:
    September 2, 2020 at 11:57 am

    I have read your doc up and down several times and I have put “copy tsbstep” where it should be according to the docs in the task sequence. I have removed everything from the TS that was referring to the old version of TSBackground.

    This was the last resort to ask for some trobuleshooting guidance since “copy TSBToHDD” complete successfully but I cannot find any files on the harddrive after first reboot, and it hard to dig deeper when you dont know what “Copy TSTToHdd” is doing after it has completed since the docs have zero information about that command.

    Thanks for you help.

    Reply
  16. Norman says:
    September 4, 2020 at 9:22 am

    Thank you Johan, we are a fan of the TSBackground since the first version. Great work.

    With the 1.7 version we have the same issue like Nicklas told. I think the location C:\Windows\Temp isn´t optimal.
    We have a rate of 50% that the TSBackground runs until the end of the OS tasksequence.
    We set the copy TSBToHDD step between Apply Image and Setup Windows/Config Manger Agent. For troubleshooting we setup on many positions of the OSD tasksequence a PS script step to check if the TSBackground files still exist in C:\Windows\Temp\ or were lost. So we could see that the files are sometimes cleared away. Likewise after the Step Setup Windows/Config Manger Agent.
    Wouldn’t it be a solution to be able to determine the target path yourself and configure it in the TSBackground.exe.config file ?
    (ConfigMgr2002/ADK2004/Windows10 1909)
    Thanks in advance.

    Reply
  17. Claudio Mendes says:
    September 30, 2020 at 3:22 pm

    would be nice to have a pause button ^^
    also would like to see some a ts example for a upgrade scenario 😀

    Reply
  18. Ian says:
    October 29, 2020 at 9:08 am

    @Nicklas,

    We had what seems to be the same problem, I wonder if you are doing the same, we were using an “Operating System Upgrade Package” as part of the TS, this seems to move everything that is in the windows folder to windows.old during the windows setup stage meaning TSBackground isn’t in the expected location after a reboot and therefore doesn’t start up again.

    We’ve changed to using an “Operating System Image” which I guess is the preferred method anyway for installing the OS and it’s working as described in the manual.

    Reply
  19. RC says:
    December 1, 2020 at 10:11 am

    This is my first time trying to use TSBackground so I don’t have any previous version only the latest download. I’ve placed the copytsbtohdd step in the task sequence like the manual says but TSBackground never loads after the Setup Windows + CFGMgr step (it works fine for the WinPE part of the build). This page mentions the unattend.xml command but that’s not in the manual do I need to use that?

    Reply
  20. Jason Lawrence says:
    December 4, 2020 at 3:34 pm

    Nicklas
    Did you ever figure out the proper place to put the Copy TSTToHdd step. We are having the same issue where no matter what we have tried the TSbackground doesn’t load on reboot from winpe to full os. Does anybody know if the unattend.xml file is still required in the newest version, we never used it in the older build.

    Reply
  21. Jason says:
    December 8, 2020 at 1:07 am

    Nicklas

    Did you ever get your task sequence working? We recently did the same as you and updated from the older build of tsbackground where we manually copied tsbackground.exe and called the .exe after a reboot into full OS. We have been through the task sequence and documentation and can’t figure out where the files go after the setup config mgr client step.

    Reply
    1. Johan says:
      December 8, 2020 at 1:18 am

      Make sure to use the latest version from here: https://onevinn.schrewelius.it/
      If you have used an older version before you might have some leftover references in your Unattend-file, make sure these are removed. To get a hint of what might be going wrong; switch to Debug mode while still in PE and check out the log at x:\windows\temp\smstslogs\tsbackground.log

      Reply
  22. Mark P says:
    January 18, 2021 at 2:20 pm

    Hey Johan,

    I’m trying to get the UserGroupDN and LogonDomain working.
    Are there any networking/domain controller requirements to set this up? – I have the correct group and domain, but when I enter known correct login details the login prompt just disappears.

    I should note, using TSBackground Remote Control works as expected so I know I have the correct group.

    Reply
  23. Rodrigo Fronza says:
    January 18, 2021 at 5:05 pm

    Hi
    I’m starting to use TSBackground and I have a task where I put a script to make the device name (D + BiosNumber) and I have put it in a variable.
    The end of the script looks like this:
    $ newname = $ ff + ‘-‘ + $ csn
    try {
    $ tsenv = New-Object -ComObject Microsoft.SMS.TSEnvironment
    $ tsenv.Value (“_ SMSTSMachineName”) = $ newname
    Write-Output 0
    }
    catch {
    Write-Output “you forgot to flush the toilet”
    }

    But I am not able to put the name on the background of TSBackground and is also entering the domain with that generic name of Widows that appears to me for example: MININT-8NCKVFF

    Do you have any suggestions? please

    Reply
    1. Julian Santa-Rita says:
      July 17, 2023 at 9:32 pm

      powershell autoname for dells – prefix=we use our own/ the rest is the asset tag. outpu it to the OSDComputerName var in the TS. ours shows up properly
      _________________

      $SerialNumber=((Get-WmiObject -Class Win32_bios | Select -ExpandProperty SerialNumber)).Replace(” “,””)
      If ($SerialNumber.Length -le ‘7’) {} Else {$SerialNumber=$SerialNumber.Substring($SerialNumber.Length – 7)}
      $OSDComputerName = “prefix-“+ $SerialNumber
      Write-output $OSDComputerName

      __________________
      also add OSDComputerName to the GUI line ‘output to task sequence variable:”

      Reply
  24. Mark P says:
    January 20, 2021 at 12:57 pm

    Heyas, I worked out the cause of the login not working, the domain field is case sensitive. Nice easy fix ;o)

    Reply
  25. Mark P says:
    January 20, 2021 at 1:09 pm

    Hey Rodrigo,
    _SMSTSMachineName is a read only variable, when managing computer names in a TS using variables, it’s best practice to use OSDComputerName (input)
    Applies to the Apply Windows Settings step.
    Specifies the name of the destination computer.

    All the best

    MP

    Reply
    1. Alejandro A Suarez says:
      February 10, 2023 at 9:46 pm

      Hey Mark,

      can you share the steps to get the computer name in the background?

      Reply
      1. Alejandro A Suarez says:
        April 13, 2023 at 7:27 pm

        Nevermind, it was too easy, I am using UI++ to customize my image. I am using OSDcomputername as variable. I changed the general.xml file where the variable _SMSTSMachineName is. No my variable is OSDcomputername. I added also de DP info. This is a great tool.

        Reply
  26. Rodrigo Fronza says:
    January 21, 2021 at 11:55 pm

    Hi mark
    I made the changes to the script as well and revised the .xaml files again.
    And yes, I managed to make it work.
    Now I will work harder to personalize the TS.
    Thank you for the tip.

    Reply
    1. Alejandro A Suarez says:
      February 2, 2023 at 3:21 pm

      Hello Rodrigo,
      Can you share the steps?

      Reply
    2. Alejandro A Suarez says:
      February 8, 2023 at 4:41 pm

      Hey Rodrigo,

      can you share the steps to get the computer name in the background?

      Reply
      1. Alejandro A Suarez says:
        April 13, 2023 at 7:26 pm

        Nevermind, it was too easy, I am using UI++ to customize my image. I am using OSDcomputername as variable. I changed the general.xml file where the variable _SMSTSMachineName is. No my variable is OSDcomputername. I added also de DP info. This is a great tool.

        Reply
  27. thomas says:
    February 2, 2021 at 9:18 am

    Hi Johan
    I really like your tool. Its great.
    Can you tell me if there is a way to change the location of the log copy?
    Actually your tool store the logs to %systemdrive%\smstslogs.

    Reply
    1. Johan says:
      February 2, 2021 at 11:26 am

      We have run tests without TSBackground with the same result, indicating that this is in fact a bug in ConfigMgr 2010. You can add a step to your TS to delete it, or wait for MS to fix it…

      Reply
  28. Michael Gibson says:
    February 2, 2021 at 11:39 am

    First off, thanks for a great free tool which makes supporting OS Deployments a lot easier, it’s saved us a LOT of time diagnosing imaging issues in the last couple of years. I’ve tried finding a place to log issues and have come up blank as the technet page is now no longer working, so if there’s a better place, please advise.

    We’ve just upgraded to the latest v1.7 version and noticed some issues when we press F8:

    1. with only the encrypted password in the config file, the enter key doesn’t work (tried multiple machines) so we can’t enter the password.

    2. We’ve also tried using an AD group but no matter how many accounts we try that are in the group it just closes the account info dialog box when pressing enter (so we know enter works on this but not number issue 1 above) or click the button.

    Thanks in advance for any support you can offer.
    Michael

    Reply
    1. Johan says:
      February 2, 2021 at 11:54 am

      Can you please make sure you’re on the latest version from here: https://onevinn.schrewelius.it/ Also note that you will have to create a new encrypted debug password using the latest encrypter, the algorithm was changed and is now FIPS compatible, which ironically meant lowering the encryption level. If you use AD-group, I’m afraid the Domain name is case sensitive, something that will be handled in the next revision.

      Reply
  29. Michael Gibson says:
    February 2, 2021 at 3:43 pm

    Thanks Johan, updating the password using the encryption tool fixed this.

    For the AD domain login, both AD and the config file have the domain in uppercase with the DN copied directly from the group properties, so maybe something else isn’t right. I’ll wait for the next version to test this again.

    Reply
  30. Steve W says:
    February 3, 2021 at 3:12 am

    I get an error during the specialize phase after updating to 1.0.20324.1 , it looks like the exe isn’t getting copied into the Temp directory. The documentation says to ensure there’s no copy function used anywhere but it’s still in the example TS provided in the package. Putting the CopyTSBToHdd step in restores functionality.

    What process is currently correct for this?

    Reply
    1. Johan says:
      February 3, 2021 at 8:12 am

      Documentation is hard! You should use the TS Step (CopyTSBToHDD), remove the command (old method) from the Unattend file.

      Reply
  31. Marc Vincent says:
    February 26, 2021 at 9:55 am

    the download link https://gallery.technet.microsoft.com/Configuration-Manager-Task-6422b6f8?redir=0 is not working anymore. can you update the download link?

    Reply
    1. Johan says:
      February 26, 2021 at 12:07 pm

      You’ll find it here: https://onevinn.schrewelius.it/ Will update the post when time allows.

      Reply
  32. Brandon Rinkenberger says:
    March 25, 2021 at 5:53 pm

    Will TSBackground for ConfigMgr work without PXE boot?

    Reply
    1. Johan says:
      March 26, 2021 at 7:46 am

      Yes, just create the boot image according to the manual and base you boot media on that.

      Reply
  33. Amnon Feiner says:
    March 26, 2021 at 5:21 am

    Trying to load TSBackground during in-place upgrade from 1909 to 20H2, no luck. Seems like I need to create a package and call TSBackground.exe for it? Not sure if that is the solution, or may be call it from the TSBackground.ps1?
    Thanks

    Reply
    1. Johan says:
      March 26, 2021 at 7:45 am

      TSBackground only supports OSD, for upgrade scenarios, have a look at the “Windows 10 Upgrade Tools””, which includes UPGBackground, a simplified alternative for upgrade TSs.

      Reply
  34. Amnon Feiner says:
    March 26, 2021 at 2:08 pm

    I am doing OSD in SCCM, simply using the In-Place upgrade TS.

    Reply
  35. Amnon Feiner says:
    March 29, 2021 at 4:54 pm

    I assume by the lack of answer it’s does not work when doing in-place. Thanks anyway

    Reply
  36. Paul says:
    June 1, 2021 at 9:25 pm

    Are there any plans to support an Autopilot “All Provisioned Devices” Task Sequence?

    Reply
  37. Michael says:
    June 9, 2021 at 1:20 pm

    Hello Johan, thank you for the nice solution.
    I try to use the TSBackground solution for the OS Depolyment. I implemented it as described in the documentation. In the TS Step CopyTSBToHdd noting seems to be copied. In the smsts.log I find that CopyTSBToHdd() is an invalid Operation. I wonder that CopyTSBToHdd() is a method of the Com-Object Microsoft.SMS.TsProgressUI. Can you please help me, what is wrong with my configuration?
    Further I try to use Remote Control in the WinPE Phase. In the registry of WinPe I find a firewall rule named “TSBackround Remote control” on the port I use. But a connection to the WinPE machine is not possible. Only after disabling the firewall with wpeutil disablefirewall the connection is successful. Is this maybe a known Bug?
    Thank you.
    Michael

    Reply
  38. Klaus says:
    July 6, 2021 at 9:17 pm

    Hi @ll,

    First of all, this is really a smart good solution. I ‘m really impressed.
    Unfortunately I have an error, no matter what I try, the password that I create using the tool and enter in the configuration unfortunately does not work.
    Even if I just try to enter “AAAAAAAA” as the password, unfortunately it does not work.
    can someone help here?

    Reply
    1. Johan says:
      July 8, 2021 at 11:12 pm

      Is it possible that you are mixing versions; are you using the password encrypter included in the latest release, the encryption algorithm has been changed at least once?

      Reply
  39. Klaus says:
    July 8, 2021 at 5:38 pm

    hello @ll,
    after spending hours trying to figure out what’s wrong with no success.

    Unfortunately I currently have the problem that TSBackground.exe does not want to start within WinPE. The package is there and even when I try to start that directly from the command line (debug mode) the process doesn’t start and I also try to start everything from running winpesh.exe, where winpeshl.ini is the correct path and two further commlines are executed without problems.

    Does anyone have any idea or direction to find and solve this problem?

    thx klaus

    Reply
    1. Johan says:
      July 8, 2021 at 11:07 pm

      Could you try with a standard (TSBackground style) winpeshl.ini, without the two extra commands?

      Reply
  40. Klaus says:
    July 9, 2021 at 8:57 am

    Hi Johan,
    First of all, thank you very much for investing your time to help me, I really appreciate that.
    yes, I’ve already tried that with “only” the two lines. Windows PE starts, the background image is shortly visible and then the system restarts completely

    Reply
    1. Johan says:
      July 9, 2021 at 9:08 am

      Are you sure what you see briefly is not the “Windows PE Background” rather than TSBackground? This is the behavior you would otherwise expect if TSBackground is not in the correct location; can you double check (Section 14 of the manual) that the TSBackground folder is a SUB FOLDER to the “Boot Extra Files” included as Source Directory for prestart commands? We have seen others put the TSB files directly in source directory at numerous occasions, so I have to ask….

      Reply
  41. Klaus says:
    July 9, 2021 at 1:22 pm

    Hello,
    of course you can ask, I really appreciate your helping me ..
    well, yes I sure, as far as you can be sure 😉
    What I did to check that, remove the line from winpeshl.ini, activate the normal F8 support of WinPE, boot winpe (press F8) and check whether the path is correct and the files are accessible, then I have this path copied directly into winpeShl.ini, and the files are then updated in SCCM. SCCM WinPE update process started and then tried again with the new WinPE, unfortunately with the same result

    Reply
  42. Klaus says:
    July 9, 2021 at 1:25 pm

    just as additional info. during the search and fix i also tried to add the files with the OSDInjection.xml, result is unfortunately same..

    Reply
    1. Daniel says:
      May 20, 2022 at 7:25 pm

      What worked for me was to unregister TSProgressUI in WinPEShl.ini before executing TSBackground. In my smsts.logs I noticed that the copytsbtohdd and gatherlocal steps were failing with some invalid method messages. I then stumbled across some 2Pint documentation regarding using TSBackground with one of their products and tried what I thought was necessary. In my case, I think the following line was the solution: “%SYSTEMDRIVE%\sms\bin\x64\TsProgressUI.exe,/unregister”

      Now I can see that my test operating system deployment ended in tears… but that’s because my very old workbench computer is not supported by HPIA. I should upgrade it!

      Reply
  43. Michael Pennington says:
    October 27, 2021 at 2:10 pm

    Thank you again for this amazing tool. It might be worth adding to the instructions that you must use an operating system image not an upgrade package. The latter causes the files in C:\Windows\Temp to be moved to C:\Windows.old and it fails to launch TSBackground after the first reboot.

    Reply
  44. Jean-Sebastien says:
    November 26, 2021 at 10:19 pm

    Just stumble here from your own website https://onevinn.schrewelius.it/Apps01.html. For me, TSBackground doesn’t hide TSPRogress UI, which is weird in it’s own. The value is set to True as per default, don’t know why it doesn’t work 🙁

    Reply
  45. Pingback: Configuration Manager OSDBackground - CCMEXEC.COM - Enterprise Mobility
  46. Long Truong says:
    March 4, 2022 at 10:23 am

    We experience the same think TSPRogress UI is not hide and we have the
    – reverte back to a older version and it work – 1.0.20324.01
    the version that doesnt work – 1.0.21143.01
    btw is there a github or something where you can get older edition version

    Reply
  47. BobojoBaxter says:
    May 26, 2022 at 2:57 am

    So I am running into the issue where the system reboots immediately after launching WinPE. I see the new background but then it reboots. I am assuming its because it can’t find the files, and the WinPEShl.ini is referencing the path: x:\sms\pkg\sms10000\TSBackground\TSBackground.exe but not finding it? I have the checkbox for the Enable Pre=Start command and the “include files” and it still doesn’t work. Does this still work?

    Reply
  48. Pingback: Show DP information during OSD using TSBackground - CCMEXEC.COM - Enterprise Mobility %
  49. Chris says:
    September 14, 2022 at 6:38 pm

    Hi Johan,

    First off let me say I love TSBackground and I have been testing it for a day or so in my lab and would love to use this during our Enterprise builds with SCCM. I have gotten everything working just fine on our older models. HOWEVER, our newest HP devices have a bios setting called: “Virtualization based bios protection” (Under System, BIOS Sure Start settings). I get an error when I attempt to boot from USB Boot media to start my task sequence. This same USB drive works just fine on our other models. But the new gen HP’s seem to have a bios security feature that your tool doesnt seem to play nicely with. Do you know anything about that and would you be able to assist at all?

    I get an error VBBP-1007 before the computer even boots into winpe.

    I should also add that these new HP Models work just fine with our task sequence, started via USB, WITHOUT any of your TSBackground stuff added in.

    Reply
    1. Jörgen Nilsson says:
      September 22, 2022 at 9:33 am

      We will look into it.
      Regards,
      Jörgen

      Reply
  50. David Jimenez says:
    October 7, 2022 at 9:42 pm

    My lead designer found your utility and loaded it up on our dev server. I do not know what happened, but after loading this, you cannot log in to any system after the image drops (OS gets loaded, and you get stuck at a login screen). Now all our templates in dev are broken. They removed your utility, and we are still broken with the same issue.

    Do you have any thoughts on what hooks might be left over after an uninstall that we should look for? I was just brought in to this and have no idea how your utility works, I am trying to avoid having to rebuild our dev server. Thanks.

    Reply
  51. Cris Kolkman says:
    November 25, 2022 at 3:25 pm

    Hello Jörgen,

    I’m trying to start using this package but having some trouble.
    I can’t paste screenshots here so I’ll try to explain it as good as possible.

    In our environment we have an MDT (WDS) server reacting to PXE requests because we also need a few other boot options (CloneZilla for example), from here we choose to boot from SCCM.

    Within SCCM I have created a new boot image with the settings as described in the documentation.
    On the WDS server I have imported this image in the boot images making it available to choose from the WDS menu.

    After loading the boot image, I see the background for a second and the machine just ends up in a bootloop:
    – Rebooting
    – Showing status bar “Loading files…”
    – Showing Windows 10 logo with the spinning loading icon
    – Showing the background (and a few cmd prompts) for a second
    – Rebooting
    – ….. And so on

    Do you have any idea what could be wrong?

    Reply
  52. Cris says:
    November 25, 2022 at 4:00 pm

    Hello Jörgen,

    We are starting te use TSBackground and running into an issue at the moment.

    In our environment we have a WDS server reacting to PXE because we need the ability to choose different options (like CloneZilla).
    I have created a new boot image within SCCM with the needed modifications and I have imported this new boot image into WDS making it available to choose from the Windows Boot Manager menu.

    Once I choose this boot image, the file gets downloaded, for a second I see the background (and a few cmd prompts) and then the machine reboots, and this process keeps going.

    Do you have an idea what could be wrong?

    Reply
  53. Jean-Sébastien says:
    February 3, 2023 at 8:01 pm

    Hello,

    I’m using tbackground for about 2 years now, love it. We just implemented RBAC for site management and I found out that if I don’t give read to “all systems”, the picker is empty. Is there a way around it? Because if I give read to “all systems”, it then give the user the ability to see all collection base on this collection and this is something I do not want.

    Thank you

    Reply
    1. Jean-Sébastien says:
      February 3, 2023 at 8:52 pm

      I’d like to amend my last comment. Problem wasn’t with all system read access. Tool require read access to “Task Sequence Packages”. Good to know if someone else is doing RBAC.

      Reply
  54. Jürgen Winter says:
    February 21, 2023 at 2:27 pm

    Hello!
    We managed to get it to work correctly in the WinPe Phase. But for some reason in Full OS the TS continues without TSBackground.
    The CopyTSBToHdd Step executed without errors directly before the “Setup Windows and Configuration Manager” Step.
    We also saw after TS was finished, that the TSBackground Service was created successfully for the tsbservice.exe in C:\Windows (thewhich is still there) and the TSBackground Folder with all Files also exists in C:\Windows\Temp.
    Or maybe the TSBService does not work correctly in Windows 11 22H2, which is where we´re trying to implement TSB?

    Reply
    1. Jörgen Nilsson says:
      February 25, 2023 at 3:03 pm

      Hi, We have heard this from a few but haven’t been able to narrow it down…
      Do the client have internet access during OSD?
      Are you using the Install.wim or custom OS Image?
      Regards,
      Jörgen

      Reply
  55. Jürgen Winter says:
    March 7, 2023 at 8:45 am

    Well, it seems like it is indeed a compatibility Problem with Win11 22H2. We tried with the patched wim directly from Microsoft (Enterprise x64) and have this problem.

    Then we just replace the image in the TS with the current Win10 22H2 Enterprise x64 image and everything works like a charm (We didnt try with Win11 21H2 though).

    Reply
  56. Dylan Brown says:
    March 24, 2023 at 3:48 am

    We’re having the same issue Jurgen is having, except we’re using Windows 10 21h2. Vanilla wim but updated via configmgr services and extracted only the enterprise edition (also via the configmgr console).

    Can confirm all the files are there in c:\windows\temp, but nothing starts up in full OS mode.

    Reply
  57. Dylan says:
    March 24, 2023 at 2:17 pm

    After the setup Windows stage and reboot with the CM Client, I can see the TSBservice is in a “startpending” state. If I try to start-service with Powershell, it just stays at “waiting for Service tsbservice to start” seemingly forever.

    Reply
  58. Dylan says:
    March 24, 2023 at 3:04 pm

    Well I fixed my issue and it’s a dumb one on my part. I didn’t ensure the files weren’t “unblocked” first. Get-childitem -recurse | unblock-file is your friend.

    Reply
    1. Fredrik Kristensen says:
      May 15, 2023 at 3:26 pm

      This might be a stupid question, but at what point should this be done, and on what folder?
      I see that TSBackground is stored locally at C:\Windows\Temp\TSBackground – is this what I should unblock? And at what point in the task sequence should this be done?

      Reply
      1. Todd says:
        June 19, 2023 at 10:52 pm

        Dylan, can you be more precise as to where this needs to be done? I’m running into the same issue with it not working after the reboot out of WinPE and into the OS…

        It works fine on and older image of Windows 10 that the company I just started at was using, but after customizing 22H2 with Wimwitch, it doesn’t work after WinPE.

        Reply
        1. Robert says:
          July 11, 2023 at 1:53 pm

          Thats the solution.
          Add this Powershell script after the point “CopyTSBToHdd”

          Set-Location -Path C:\Windows\Temp\TSBackground

          Get-childitem -recurse | unblock-file

          That´s the way!

          Reply
  59. Jürgen Winter says:
    April 4, 2023 at 4:34 pm

    Thanks Dylan. Unblocking the files solved my problem too. I should have taken a closer look to the basics. Oh well ^^.

    I hope this gets added to the Issues Section of the TSBackground PDF 🙂

    Reply
    1. Robert Birner says:
      July 11, 2023 at 12:53 pm

      Hey Jürgen,

      How did you do that?

      Reply
  60. Daniel says:
    April 5, 2023 at 7:12 am

    In our case it was
    ”
    32
    1024
    60
    768
    ”

    in the unattend.xml file under <component name="Microsoft-Windows-Shell-Setup". Remove ,save and update.

    Reply
  61. Ray says:
    April 10, 2023 at 8:12 pm

    Hello! I appear to have TSbackground working correctly, but all of a sudden I am seeing TSbackground running upon logging into the Windows the first time post-image. I then disabled the Success and Error dialogs from my task sequence, but now I still see TSbackground is running…showing the background with an Error step and progress bar. I can close it via task manager, but this is happening one the initial login and stops after a reboot. Any thoughts on this? Thanks for any help you can provide!

    Reply
  62. Chris says:
    May 1, 2023 at 6:26 pm

    Hello,

    In my task sequence I clear and initialize the TPM via powershell:

    Clear-TPM
    Initialize-TPM

    Then I have a restart in the sccm task sequence and after that I noticed that TSBackground isnt coming back up when it boots back into windows and resumes the Task sequence. Its back to using the TSProgressUI. I have confirmed this on more than one PC. It doesnt always happen, but when it does, and its semi frequent, its always in this spot in our build. Has anyone seen this before?

    Reply
  63. Chris says:
    May 1, 2023 at 6:28 pm

    add a reboot to the postaction smsts variable. So that after the task sequence is complete the computer reboots and then the background will be gone.

    Shutdown /f /r /t 15

    Reply
  64. Chris says:
    May 4, 2023 at 10:41 pm

    Is there a way to restart TSBackground during the task sequence? If we see that its failed could we program in a step to check for the process and then do something to get it to launch again on next reboot possibly? I really like the splash screen but we have started seeing that maybe 25% of the time TSBackground fails to launch after a reboot. It typically happens in the last 15 minutes or so of our task sequence. I have certain information that appears on the failed or success splash, so if tsbackground isnt running it kinda kills that.

    Reply
  65. Mika Määttä says:
    May 23, 2023 at 12:32 pm

    hi,
    I have a problem
    My SCCM OSD include WinPE Boot image with UI++ applications and TSBackground applications. And now TSBackground does not appear when the Setup Windows and Configuration Manager step restarts the machine first time, but continues with the normal SCCM task sequence screen.
    The CopyTSBToHdd() powershell script (New-Object -COMObject Microsoft.SMS.TsProgressUI) is before the Setup Windows step.
    Windows Server 2019 (OS Build 17763.4377) and 2023-05 Cumulative Update (KB5026362) installed.
    Windows 10 ADK 2004 and WinPE add-on is installed before that.
    SCCM is version 2303. I used the Win10 22H2 install.wim
    TSBackground.exe version 1.0.21143.01
    Can anybody help me?

    Reply
  66. Chris says:
    May 31, 2023 at 9:28 pm

    This fixed my issue with TSBackground and Windows 11 as well. THANK YOU!

    Reply
  67. HOANG NGUYEN says:
    August 25, 2023 at 6:55 pm

    Anyone got issue with TSB Remote Control after Setup Windows and Configuration Manager step? I am able to see during WinPE but not in Windows, Task Sequence runs fine though but I can’t remote to it.

    Reply
  68. TP says:
    October 24, 2023 at 5:57 pm

    Hi, first time using TSBG and I’ve reviewed the documentation over and over. After loading the boot image, the BG comes up then restarts in about 5 seconds. F8 doesn’t work (tried with FN also) and right/left clicking in the corners wont pull up the debug. I have check several times to see where i went wrong but I’ve followed your document exactly.

    Reply
  69. Ben says:
    November 6, 2023 at 10:36 pm

    Is there any way to see the source code for TSBackground by chance? We were fighting with this mightily over the last couple of days… trying to get it working with an iPXE boot image. The challenge being that TSBackground is looking for TsBootShell.exe to be running… and if it’s not running, it launches it… which messes things up. WinPE booted from iPXE does not launch TsBootShell.exe. Instead it runs TsmBootStrap.exe directly. It would be nice to have an option to ignore TsBootShell.exe not running… or for TSBackground to use some other indicator that a TS is in progress.

    Our workaround was to create a dummy TsBootShell.exe and run it. Then TSBackground will run without issues in WinPE.

    Reply
  70. Will says:
    March 18, 2024 at 9:28 pm

    This works flawlessly when run via PXE but if its configured in a task sequence and deployed as a required task sequence to clients in a collection, it doesn’t work. Any thoughts as to why that might be?

    Reply
  71. Carl says:
    July 26, 2024 at 5:49 pm

    I seem to be having a problem with this working in Windows 11 OSD. First off it works in PE but doesn’t close the progressui. In addition the progress wheel does show but does not indicate which step name it is on. It does however show which step number at the bottom of the screen.

    That being said once its in Full OS it does not come up at all. All steps were followed to a T from the doc. No luck getting it to fire in Full OS. Any suggestions?

    Reply

Leave a Reply Cancel reply

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.

My name is Jörgen Nilsson and I work as a Senior Consultant at Onevinn in Malmö, Sweden. This is my blog where I will share tips and stuff for my own and everyone elses use on Enterprise Mobility and Windows related topics.
All code is provided "AS-IS" with no warranties.

Recent Posts

  • New settings in Intune Security Baseline Windows 11 24H2 -2504
  • Managing extensions in Visual Studio Code
  • Reinstall a required Win32app using remediation on demand
  • Administrator protection in Windows 11 – First look
  • Remediation on demand script – ResetWindowsUpdate
©2025 CCMEXEC.COM – Enterprise Mobility | WordPress Theme by Superb Themes
This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish.Accept Reject Read More
Privacy & Cookies Policy

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Non-necessary
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.
SAVE & ACCEPT