TSBackground Mark II - ConfigMgr Task sequence background application.

This is the next generation (2019) background application for Configuration manager Task sequences. It introduces a vaste number of customizations as the entire background is generated from editable xaml files at runtime.

TSBackground.zip
 
 
 
 
 
4.9 Star
(12)
1,464 times
Add to favorites
System Center
10/24/2019
E-mail Twitter del.icio.us Digg Facebook
Sign in to ask a question


  • Should this be used in your "Windows 10 Upgrade Tools"
    2 Posts | Last post January 10, 2020
    • Hi Johan,
      Have some issues with TSBackground included in your Windows 20 Upgrade Tools but can't fing/get any help on that page. Should/could this be used by TSLaunch insted of the one included in that package? Maybe that would solve som of the issues:)
      
      Are you planing to upgrade the "Windows 10 Upgrade Tools" package:
      https://gallery.technet.microsoft.com/Windows-10-Upgrade-Tools-431094ca/
    • TSBackground is not included in the upgrade tools. You must be referring to UPGBackground, a completely different application. They are not interchangeable to answer that question.
  • TSBackground Folder not Copied to FullOS
    14 Posts | Last post January 03, 2020
    • What method is TSBackground.exe using to copy itself to %systemdrive%\Windows\Temp?
      
      With the latest version of TSBackground.exe, I'm still running into this problem occasionally.
      
      
      OSD Error:
      "Windows could not parse or process the unattended answer file for pass [specialize]. The settings specified in the answer file cannot be applied. The error was detected while processing settings for component [Microsoft-Windows-Deployment]."
      
      Unattend.xml:
                      <RunSynchronousCommand wcm:action="add">
                          <Description>TSBackground</Description>
                          <Order>1</Order>
                          <Path>%OSDTargetSystemDrive%\windows\temp\TSBackground\TSBackground.exe UNATTEND</Path>
                      </RunSynchronousCommand>
      
      
      
      SMSTS.log:
      -Found Drive: D:
      -Property OSDTargetDriveCache is now = D:
      -Property OSDisk is now = D:
      ~
      -Successfully copied configuration file D:\_SMSTaskSequence\Packages\00XXXXX\Unattend_1809_20190825.xml to D:\Windows\panther\unattend\unattend.xml
      
      
      Booting back up from WinPE after error:
      "D:\Windows\Temp\TSBackground" does not exist. (or on any other local drive)
      
      X:\sms\PKG\SMS10000\TSBackground\TSBackground.exe file version = 1.0.19228.01
    • FYI, this was on an VMware ESXi VM through vSphere (6.5.0.13x).
    • Just reproduced it on 2 laptops as well.  All installing Win10x64 1809.
    • The ones this is predominately failing on, are those started from Software Center.  
      
      I haven't been able to run all tests on all models yet, but it looks like when started from boot media, it works as expected.  And when started from Software Center it fails to copy to %windir%\Temp.
      
      I'm testing with a Package instead now, because when this fails the USMT hard-linked data is lost.
    • Had some thoughts, but either me or my phone messed it up, see Patrstro's post.
    • Same problem here, same error. Happens sometimes, but thats a lot when deploying 100 machines one day.
      I opened taskmgr and TSBackground was using 3-4 GB of RAM, and the client only had 4GB..Could that be the same as you other guys?
    • Look at this Johan!!!!
      https://ibb.co/HC3bLHf
      TSBackground is using  ~ 2GB of RAM. This may be the cause?
      It went from ~80MB to 2GB in seconds when downloading the files for the "Setup Windows and ConfigMgr" step.
    • I found this when getting the "Windows could not parse or process the unattended answer file for pass [specialize]-error.
      
      Panther folder:
      
      diagerr.xml:
      
      <rs:data>
      <z:row Cls="D" Sev="33554432" Maj="Def" Min="Def" LN="470" Fil="" Fun="UnattendLogWV" Uid="33554432" Msg="[SETUPUGC.EXE] Hit an error (hr = 0x80070002) while running [C:\windows\temp\TSBackground\TSBackground.exe UNATTEND]" PID="2316" TID="444" Con="" Exe="C:\WINDOWS\SYSTEM32\SETUPUGC.EXE" Mod="SETUPUGC.EXE" Err="0" MD="" DT="2019-11-06T02:27:05"/>
      <z:row Cls="D" Sev="33554432" Maj="Def" Min="Def" LN="470" Fil="" Fun="UnattendLogWV" Uid="33554432" Msg="[windeploy.exe] Setup.exe failed, returning exit code [0x1f]" PID="1080" TID="1084" Con="" Exe="C:\WINDOWS\system32\oobe\windeploy.exe" Mod="windeploy.exe" Err="0" MD="" DT="2019-11-06T02:28:28"/>
      <z:row Cls="D" Sev="33554432" Maj="Def" Min="Def" LN="470" Fil="" Fun="UnattendLogWV" Uid="33554432" Msg="[windeploy.exe] Failure occured during online installation.  Online installation cannot complete at this time.; hr = 0x80004005" PID="1080" TID="1084" Con="" Exe="C:\WINDOWS\system32\oobe\windeploy.exe" Mod="windeploy.exe" Err="0" MD="" DT="2019-11-06T02:28:28"/>
      </rs:data>
      
      
      
      Setuperr.log:
      
      2019-11-06 02:27:05, Error                        [SETUPUGC.EXE] Hit an error (hr = 0x80070002) while running [C:\windows\temp\TSBackground\TSBackground.exe UNATTEND]
      2019-11-06 02:28:28, Error                        [windeploy.exe] Setup.exe failed, returning exit code [0x1f]
      2019-11-06 02:28:28, Error                        [windeploy.exe] Failure occured during online installation.  Online installation cannot complete at this time.; hr = 0x80004005
      
      
    • Setupact.log:
      
      
      2019-11-06 02:27:05, Info                         [SETUPUGC.EXE] Found run command in registry: description = [TSBackground]
      2019-11-06 02:27:05, Info                         [SETUPUGC.EXE] Found run command in registry: credentials = { domain is not specified, username is not specified, password info not logged }
      2019-11-06 02:27:05, Info                         [SETUPUGC.EXE] Found run command in registry: will continue execution without examining exit code
      2019-11-06 02:27:05, Info                         [SETUPUGC.EXE] Found run command in registry: path = [C:\windows\temp\TSBackground\TSBackground.exe UNATTEND]
      2019-11-06 02:27:05, Info                         [SETUPUGC.EXE] Found RunSynchronous command: [C:\windows\temp\TSBackground\TSBackground.exe UNATTEND]
      2019-11-06 02:27:05, Info                         [SETUPUGC.EXE] Found run command in registry: description = [disable user account page]
      2019-11-06 02:27:05, Info                         [SETUPUGC.EXE] Found run command in registry: credentials = { domain is not specified, username is not specified, password info not logged }
      2019-11-06 02:27:05, Info                         [SETUPUGC.EXE] Found run command in registry: will continue execution without examining exit code
      2019-11-06 02:27:05, Info                         [SETUPUGC.EXE] Found run command in registry: path = [reg add HKLM\Software\Microsoft\Windows\CurrentVersion\Setup\OOBE /v UnattendCreatedUser /t REG_DWORD /d 1 /f]
      2019-11-06 02:27:05, Info                         [SETUPUGC.EXE] Found RunSynchronous command: [reg add HKLM\Software\Microsoft\Windows\CurrentVersion\Setup\OOBE /v UnattendCreatedUser /t REG_DWORD /d 1 /f]
      2019-11-06 02:27:05, Info                         [SETUPUGC.EXE] Finished executing [cmd /c net user Administrator /active:yes] synchronously
      2019-11-06 02:27:05, Info                         [SETUPUGC.EXE] Process returned with exit code 0x0
    • 2019-11-06 02:27:05, Info                         [SETUPUGC.EXE] Finished executing [cmd /c reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v FilterAdministratorToken /t REG_DWORD /d 0 /f] synchronously
      2019-11-06 02:27:05, Info                         [SETUPUGC.EXE] Process returned with exit code 0x0
      2019-11-06 02:27:05, Info                         [SETUPUGC.EXE] Finished executing [reg add HKLM\Software\Microsoft\Windows\CurrentVersion\Setup\OOBE /v UnattendCreatedUser /t REG_DWORD /d 1 /f] synchronously
      2019-11-06 02:27:05, Info                         [SETUPUGC.EXE] Process returned with exit code 0x0
      2019-11-06 02:27:05, Info                         [SETUPUGC.EXE] Finished executing [reg add HKLM\Software\Microsoft\Windows\CurrentVersion\Explorer /v AsyncRunOnce /t REG_DWORD /d 0 /f] synchronously
      2019-11-06 02:27:05, Info                         [SETUPUGC.EXE] Process returned with exit code 0x0
      2019-11-06 02:27:05, Error                        [SETUPUGC.EXE] Hit an error (hr = 0x80070002) while running [C:\windows\temp\TSBackground\TSBackground.exe UNATTEND]
      2019-11-06 02:27:05, Info       [0x090009] PANTHR CBlackboard::Close: c:\windows\panther\commandexec\commandexec.
      2019-11-06 02:27:05, Info                         [SETUPUGC.EXE] SetupUGC returning with exit code [4]
      2019-11-06 02:28:28, Info                         [windeploy.exe] Process exited with exit code [0x1f]
      2019-11-06 02:28:28, Error                        [windeploy.exe] Setup.exe failed, returning exit code [0x1f]
      2019-11-06 02:28:28, Error                        [windeploy.exe] Failure occured during online installation.  Online installation cannot complete at this time.; hr = 0x80004005
      2019-11-06 02:28:28, Info                         [windeploy.exe] Windeploy: Executing OnError commands
      2019-11-06 02:28:28, Info                         [windeploy.exe] FbeExecuteExtensions: Processing callbacks in additive mode                       
    • 2019-11-06 02:28:28, Info                         [windeploy.exe] FbeExecuteExtensions: Processed 0 extensions
      2019-11-06 02:28:28, Info                         [windeploy.exe] Flushing registry to disk...
      2019-11-06 02:28:28, Info                         [windeploy.exe] Flush took 0 ms.
      2019-11-06 02:28:28, Info                         [windeploy.exe] WinDeploy.exe exiting with code [0x80004005]
      
      
      
      
      Sorry for spamming....
    • Looks like TSBackground folder was missing, that's why it failed.
      Sometimes it seems that it's not copying it self to osdisk. Maybe because of the Memory leak?
    • Any update on the memory leak and/or the copy step Johan?
      
      I added ( Copy-Item -Path "X:\sms\PKG\SMS10000\TSBackground" -Destination "%OSDisk%\windows\temp\TSBackground\" -Recurse -Force ) as a "Run PowerShell Script"-step before "Setup Windows and ConfigMgr" and that seems to have fixed the problem when tsbackground does not copy itself to os-disk.
    • I'm also experiencing this issue. The latest update (2019-08-16: v. 1.0.19228.1) did solve this issue most of the time and it doesn't occur that often, but it does happend unfortunatly. As a workaround i'm doing something similar to MokiTa with a custom PS1-Script.
  • TSBClient.exe Parameters
    1 Posts | Last post December 10, 2019
    • Is there a way to pass the connection password to TSBClient.exe? i.e TSBClient.exe /Client:<ip> /Password:<password>
  • PrepareDisk.ps1?
    3 Posts | Last post December 06, 2019
    • Hi, why do you have to execute PrepareDisk.ps1? What happens if you skip this step?
      
      Anyone?
    • That script is mainly (even though it works) added as en example of how you can facilitate prestart commands with RunSilent.exe (.ini) - you don't have to use it. WinPeshl.ini is the recommended way to launch TSBackground, please use that method?
    • OK, thanks Johan!
  • Success message
    2 Posts | Last post November 28, 2019
    • Quick question, I've added TSBackground to a task sequence, followed the guide, and used preferred method etc, and everything seems to be working well, except the display of the success message.  The percentage for installation reaches 100%, General is not displayed, percentage is display, and status is displayed, then the device pauses for a short time, and reboots.  I used your zip file to import the steps, the only thing I changed was to move to 6 steps, not 7, I updated the xaml file to remove one of the steps, updated the boot wim as needed, but still... Can't get it to display success, though everything seems to be working.  Any suggestions?
    • Never mind, figured it out.  The example steps that imported leave off at status 07, the variable needs to be set to "success".  Makes sense looking back at it...
  • CursorSuppresion in PE
    2 Posts | Last post November 20, 2019
    • Hi Johan,
      
      I started implementing the TSBackground in our Tasksequences, first this looks pretty need and works very smooth. I only have one problem, when booted into PE CursorSuppresion is enabled by default after adding the run silent command to the boot image. Is there away to get the cursor back?
      
      BR Sascha
    • You've probably already found the fix for this, but for anyone else reading this who may not have, here's the fix (from Microsoft):
      
      https://support.microsoft.com/en-ca/help/4494800/no-mouse-cursor-during-configuration-manager-osd-task-sequence
  • Is there a kill switch?
    3 Posts | Last post November 05, 2019
    • Hi Johan,
      
      is there a command that you could run in a Commandline step in an OSD task sequence, that remove all traces of TsBackground, and switch back to the standard Configmr ProgressUI on the fly, without the use of SMSTSPostAction for cleanup? I do have a specific OS scenario, Deployed with ConfigMgr, but Configmgr client is removed at the end of the TS, but Tsbackground.exe keeps running, so if I could just switch it off before the uninstall of the ConfigMgr kick-in that would be easier to control.
      Kind Regards,
      
      
      Kind Regards,
      
      Jakob
      
      
    • Could you use CMD /c TASKKILL /IM TSBACKGROUND.EXE /F as your SMSTSPostAction command instead of the reboot?
    • Hi Marc,
      
      Yes that would properly work, if you did a bit more cleanup, so it wouldn't start up at the next reboot. I was mainly interested to know, if you could set the TSBstatus to a value that would make TSBackGround "Selfdestruct"
      Jakob
  • TSBackground Folder not Copied to FullOS
    8 Posts | Last post November 05, 2019
    • Hello, great product, real good features, thanks for developing it!
      
      But i'm having issues with the latest versions.
      I have 5 different machines running the same boot image and Task Sequence. And there's always 1 or two failing when running "Setup Windows and ConfigMgr" step.
      
      I traced the problem into the TSBackground folder isn't copied to the \Windows\Temp folder.
      The parsing error displayed is showing issues with the unattend.xml and the logs say that it can't find the specific file. After reboot and starting the boot image again i look at the OSDisk and rightly so, there's no TSBackground in the C:\Windows\Temp folder.
      
      Unattend.xml 
      *
      <RunSynchronousCommand wcm:action="add">
          <Description>TSBackground</Description>
              <Order>1</Order>
                   <Path>%OSDTargetSystemDrive%\windows\temp\TSBackground\TSBackground.exe UNATTEND</Path>
      </RunSynchronousCommand>
      *
      TSBackground.exe.config:
      *
      <add key="DisableTimeHandling" value="False"/>
      <add key="CopySelfToOSDisk" value="True"/>
      <add key="CaptureF8" value="True"/>
      *
      The odd thing is that all 5 machines are running the same Boot Image, and basically the same task. And the sometimes the problem occurs, sometimes it don't.
      Any logs i might look at concerning the move of the TSBackground folder?
    • Thanks for reporting the issue, I'm investigating if the "copying" can get more robust - it seems a small (very) number of users experience the problem...
    • An improved version has now been published; please report if the problem persists?
    • Oh perfect, was nervous i did something wrong :).
      I'll get right on testing the new version. Thank you!
    • Seems to be running alot smoother now, thanks for the update!
    • See the post below this one. Bdedrive turns to c: in WinPE as PE sets the first volume (or partition) to that one. OSDTargetsystemdrive, as I understand it,is set during the PE-Phase. If updating the xml during that time it will point to d: even if windows is installed on c: after booting in full os,Oobe runs before the configmgr-agent is initiated and it will try to start tsb from the wrong drive. 
      
      But only during a refresh since the new computer scenario usually formats and partition the disk to have the same layout as it will have in fullOS.
      
      
      One possible solution might be to use the unexpanded variable %windir%\temp\xxxx in the xml. Last time I checked that wasn't working unless you added a "cmd /c" or something like that though.
      
      I solved the issue I was having by creating a "drive letter less"-Symlink before rebooting, but that's another story :)
    • Darn cell phone and cached webpage, wasn't even replying on this post but to "Matt5150"'s 'TSBackground Folder not Copied to FullOS'
    • Same problem here, same error. Happens sometimes, but thats a lot when deploying 100 machines one day.
      I opened taskmgr and TSBackground was using 3-4 GB of RAM, and the client only had 4GB..Could that be the same as you other guys?
  • Responsiveness
    2 Posts | Last post November 01, 2019
    • Hi
      
      Is there a way to change the ms delay this uses for refreshes? I notice it will usually miss about 5 or 6 tasks while the side panels are loading, and will usually change to a new stage a after a couple of tasks from that phase have already run. I've also noticed that when downloading files from large packages like a driver package, it does not list every file or go up in smooth percentage increments.
      
      Also when it first loads in the OS phase during the setup windows and config mgr stage, is it supposed to just have the name of the current task, and none of the side panels or progress bar, and is there a way to change it so it shows everything?
      
      Thanks
      
      Marc
    • I've also noticed that the IP address in the general section doesn't update, whatever it is set to when the UI loads, is what it stays at. Can you please get this to regularly check whether it has changed and then change the display if it has?
      
      And when the "success" or "error" phases are loaded, the progress circle does not go away, so the success or error messages are obscured.
  • No Info
    2 Posts | Last post October 25, 2019
    • I am having an issue with the overlays during OSD.  Nothing is coming up besides the step that its on.  Everything looks good in the Design Viewer and I have had this working before.  
    • My folder structure was a little different, and I didn't change it one one of the scrips.  I think I have it working correctly now.  Just doing some tweaking.  
1 - 10 of 73 Items