Today version 2 of the “Onevinn Windows 10 Upgrade tools” was released and there are many new great features in there created by my colleague Johan Schrewelius. It can be downloaded here: Onevinn – Applications (schrewelius.it)
More information on what TSlaunch is can be found here: https://ccmexec.com/2018/05/windows-10-upgradeservicing-tools-demoed-at-mms-2018/
I will try to cover at least some of the new features starting with how we can use the new feature for Windows 10 Upgrade Assessment. The new version of TSLaunch includes a SCCM console extension where we can monitor Tslaunch status and Upgrade Assessment status as well if we choose to use that feature.
We can have TSLaunch to automatically run a assessment upgrade as soon as the the content for the upgrade is cached locally, the result will be written to a central log file and to the SCCM console using custom status messages. This will give as nice graphical overview in the SCCM admin console of how the upgrade assessment ran and also the possibility to deep-dive into any error as shown below.
You can then select “Launcher” in the menu to the right to see more status, in my case the Windows 10 Upgrade Assessment failed on one computer, the error message is translated to a more understandable error at least for the known errors.
A log file is also created where we can see the status of everything TSlaunch actually do, it is placed in C:\Windows\Temp and copied to the logshare defined in the tslaunch.exe.config file as well.
You can then drill down to the specific computer in the console, and if you have fixed the assessment error you can select “Start TSlaunch” and it will actually inject a script in SCCM and execute it on the client using the “Runs Script” feature in Configuration Manager.
We can also run script based on the Windows 10 upgrade assessment status, success or failure then we can add computers to collections, remove them, email or whatever we want to do. Simply place the script in the TSLaunch folder and add it to the tslaunch.exe.config file.
How do we configure it then? The user-guide that Johan put together it simply great it covers that as well.
In TSLaunch.exe.config there are a couple of settings we change that is related to Windows 10 Upgrade Assessement.
RunAssessmentTestWhenContentAvailable
If the task sequence deployment is configured to pre-download all content before running it’s
possible to have TSLaunch perform an “Assessment test”. This will be performed according to the
settings in the next key “AssessmentTestArguments”.
The result of the test will be logged as integer, hex and, in most cases, clear text.
Example: “True” or “False”
Remark: Running an Assignment test might temporarily impose a slight negative impact on the
computer’s performance. Since TSLaunch is running repeated preflight checks until all pass the
assessment test will be suppressed for 12 hours. once succeeded. This will be logged.
AssessmentTestArguments
When an assessment test is performed during (within) an upgrade task sequence it invokes the windows installer program “Setup.exe” with the following arguments: “/ImageIndex 3 /auto Upgrade /quiet /noreboot /DynamicUpdate Disable /compat ScanOnly” The “AssementTestArguments” key is prepopulated with the same switches and arguments. The image index might have to be changed if you’re upgrading to anything apart from the Enterprise edition, are using modified (patched) media or if Microsoft in the future decides to not bundle the different editions. For 1709 and 1803 out of the box media, no change is required.
It’s possible to add an extra switch/argument to the line if you wish to have the logs copied somewhere for further analysis.
/CopyLogs \%COMPUTERNAME%
%COMPUTERNAME% will in this case be resolved by TSLaunch
SkipAssessmentTestOnFinalPreflightCheck
Even if the preflight checks have previously succeeded TSLaunch will always perform a final check
just before launching the upgrade task sequence. This is necessary to detect if, for example, the user
has disconnected the AC power or left the company network since last run.
It might not be necessary to run an assessment test as part of this final check; thus, it can be
suppressed by setting this key to “True”.
Example: “True” or “False”
AssessmentSucessScript
There are many possible outcomes of an assessment test, one is success all the others are different
kinds of failures, all preventing the upgrade.
If the test is successful you might want to take some special action, like adding the computer to a
collection or similar. To accomplish this, it’s possible to run a PowerShell script on success. The script
could in turn invoke a web service, such as OnevinnWS, to do the actual adding. An example script
that does just that has been included. Executed as SYSTEM.
Leave blank if no script should be run.
Example: “MyOnAssessmentSuccessScript.ps1” or “”
AssessmentFailedScript
Same as above but the script will be invoked in the event of a failure. Executed as SYSTEM
Example: “MyOnAssessmentFailureScript.ps1” or “”
This gives us great flexibility and more information and options to be successful in our Windows 10 Servicing.
Hi Jörgen,
I have tried to install that tool. But I get error message if I run TSLaunch.exe DEBUG
[WARNING] 2018-09-29 10:00:00 Remote log location \\sccm01.eklient.lab\osdlogs$ doesn’t exist.
[ERROR] 2018-09-29 10:00:00 This upgrade has expired. ‘AutoStartUpgradeOnEndDate’ is set to True, attempting Upgrade.
[ERROR] 2018-09-30 10:00:01 Failed to resolve AdvertisementID or PackageID for Task Sequence.
How can I run the tool or create a TS? Is this the issue sccm01.eklient.lab
Hi,
Yes, you need to customize the Date and make sure that it can reach the file share to be able to do the logging.
Regards,
JÖrgen
Hi Jorgen
Thanks to sharing this awsome tool from your colleague Johan.
Even if I read and reread the doc, I try to figure out how assessment work during this scenario. Actually we only have one TS which make the Win 10 upgrade. For assessment, we used OMs Upgrade Readiness, but it’s a nightmare. I try to find another solution for assessment and you’re article is very interesting but I don’t understand how can I use it. Should I need to create a new TS only for the assessment process or TSlaunch work only with a global TS which include the assessment process and the Win10 upgrade process ?
Because we like to keep the Assessment process independenlty of the upg process (juste to compile all assessment data in a way to build a solid win10 upg TS)
There seems to be somethon wrong with how the tool uses the “EndDate” value.
If I specify a date in the same format as in his PDF guide, on my client I see this in the log:
“Error converting EndDate, aborting exection. Exception: String was not recognized as a valid DateTime.”
The client itself has a completely different date format.
So in the XML the date format is: MM-dd-yyyy or MM/dd/yyyy
on my client, the format is: dd/MM/yyyy
I will test this a little more. I’ll set the EndDate to be the same format as the client and see what the behavior is.
We have clients all over the world and all of them are using the date format of their specific region.
If the tool needs the same format like the clients, then this becomes useless for us as we can’t know who has which format.
I think the tool needs to be smarter in handling all different date formats for the EndDate.
Currently, this is a show stopper.
I want to give myself a slap in the face for being this stupid.
I set the EndDate to be 04-31-2019 for testing.
So it turns out that April doesn’t have 31 days!
Appologies for being this stupid.
This tool works perfectly fine!
Hi,
Glad to hear that you solved it!
/Jörgen
This tool is working great but I’m coming across some systems that when the launcher is minizmed it doesn’t come back automatically. I’m starting to look to see if I can find something different on these systems but wanted to ask you as well if you had seen this. I can relaunch it and if the user minimizes it again will not pop up. If the computer restarts it will pop-up. This will cause issues once the deadline as passed and cause systems to upgrade without notice.
Hi Jörgen,
A small question.
In my test I ran into a HardBlock due to a compatibility issue with the Intel Audio Drivers.
More info here: https://support.microsoft.com/en-us/help/4465877/what-needs-your-attention-intel-audio-display-notification
I then corrected the problem by updating the drivers and ran the TSLaunch again from CinfigMgr.
The Powershell script ran successfully.
I can see that in SCCM in Script Status and also in the Scripts.log file.
Howeber, TSLaunch doesn’t run again on my client.
The Scheduled Tasks are not created and the Registry keys are also not there anymore. (Only an empty Onevinn reg key: HKEY_LOCAL_MACHINE\SOFTWARE\Onevinn)
I’ve run it multiple times and it’s successful every time.
There is no change whatsoever.
Any idea what can be the issue?
How should I trigger TSLaunch again on assessment failure?
Thanks!
I have now downloaded the latest version (I was running the previous version) and there is new bug.
the X days left to upgrade is now calculated with (EndDate – CurrentDate).
Before, this value was actually the value you type in “DeploymentValidNoDays”.
I’m confused about this.
Shouldn’t here be the date value you set in “DeploymentValidNoDays”?
Also, when will the upgrade actually be enforced?
I thought when the DeploymentValidNoDays count downs to 0 (zero), the upgrade would be enforced?
Now I’m not sure anymore!
Also, what would happen if the “EndDate” is actually reached?
You’ll probably find me very annoying, but I really want this to work and I want to use it in my next upgrade batch.
I’ve also noticed that if a device passes all preflight checks and also the compatibility check and the device upgrades, it is displayed nicely in the TSLaunch monitoring console.
If you deploy TSLaunch to a device that’s running the latest version already, that device is displayed as “Error” in the Preflight result.
“[ERROR] 2018-11-22 11:09:00 Detected Windows edition Enterprise version 17763 Windows cannot or has already been updated.”
While this is only a cosmetic issue, I think this should not error out but it should be displayed as already compliant.
I’ve noticed this when I deployed a newer version of TSLaunch to the same collection as the previous one.
This particular device was already upgraded with an older version, and when TSLaunch ran again, it showed this error.
We have the same problem, after a HardBlock due to a compatibility issue with the Intel Audio Driver TSLaunch won’t start again even after we fix the audio driver.
Hi,
You need to target the computer again with TSLaunch, it should be in the docs. That is why we run the Powershell scripts to remove it from collection on failure so we can add it back.
Regards,
Jörgen
This utility is very promising. The one great thing about it is adding control to the “end user” for scheduled upgrading.
I do have an issue that I am not able to explain. While deploying the previous version, there are a small subset of machines that receive the policy and 10 hours later, when no one has even seen the TSlaunch.exe utility, the system begins to upgrade. My grace period is set for 30 days yet it started the upgrade the same day it received the policy.
Hi Jörgen,
We have an issue with SCCM console extension. When opening and using it, it nags for wrong date/time format “The conversion of a varchar data type to a datetime data type resulted in an out- of- range value.” Is this based on date/time settings on that computer where this extension is installed? How to fix it? How to make this work with Finnish date/time -settings? Otherwise very cool tool!
Regs Kari
Hi,
We have exactly the same issue. TSLaunch ConfigMgr extension 2.3.18325.1 installed on Current Branch 1810. Is there a solution?
Regards,
Bernd
Hi,
Is it an upgrade or a new installation? Has it worked. That version works just great in 1810. Can you provide more information?
Regards,
Jörgen
It is an initial installation of the TSLaunch ConfigMgr extension. OS and SCCM 1810 both in installation language German. It also works, except for multiple pop-ups of the message “The conversion of a varchar data type to a datetime data type to an out-of-range value.” When selecting a TS deployment in the status window.
Regards,
Bernd
Hi,
I have the same error “The conversion of a varchar data type to a datetime data type resulted in an out-of-range value” (translated from french). Do you have any solution ?
It is un new installation of the TSlaunch ConfigMGR extension.
SCCM version 1802,
COnsole version 5.1802.1082.1807
TSLaunch ConfigMgr extension version 2.3.18325.1
Thanks,
Franck
Hi,
the new beta version 2.3.19109.1 of TSLaunch ConfigMgr extension, works fine without any of that issues!
Thank you Johan, for your great work!
Regards,
Bernd
Hi, I. Wanted to have a look at this in debug mode. But it will not run. Do you need to make any changes to the Config file before that will run?
Hi,
The debug mode is only available when the Task Sequence engine is running.. it takes a while for it to initate after a reboot, could that be the case?
Regards,
Jörgen
I had the same problem. You need to set an EndDate or it won’t run. Not even create a Log File or anything.
Hi Jörgen,
Scenario:
A user choose to re-schedule the upgrade with some hour.
During this timeslot, some windows updates been installed that require a rebooot.
I what way could I inform the user that the computer must be restarted –
before the upgrade will start?
Regards,
Leif
Hi! Great tool, working great for us. Except for one small caveat. The security permissions around the 12.2 section. We have users with limited access to the console to do task sequence deployments, etc. So they are not full admin of the console. But we want them to have access to TSLaunch extension. I have tried adding them to the ConfigMgr_DViewAccess group on both the local Primary box and the local SQL server that hosts the DB, adding a domain group. They are getting error about permissions to their account when clicking the extension.
I have access as I am full console admin. What do they need more if this is not working for them? Avoiding adding them as full admin that is.
Hi Jorgen, I am trying to get TSLaunch to run in DEBUG mode to validate the pop-up settings and I keep running into an error “There is an error in XML document (10, 131). I can’t figure out what is wrong or missing in the XML syntax.
Hi, I got a strange problem. On the first machine the TS worked fine without any issues. I then deployed to another machine and suddenly dring the Assesmnet i get following error: [ERROR] 2019-08-01 16:00:14 Assessment test failed to locate content for Package id: NF10016B. The funny thing is that the id is the tasksequence itself. Any idea why this happens? Thanks for your efforts and keep up the good work!
Hi
We have en issue. If a user schedules the upgrade to ie. friday night at 22.00 and the DeploymentValidNoDays is set so that the deployment expires saturday or sunday.
If the computer is not turned on friday night, when the user returns monday morning and turns on the computer, TSLaunch recognizes that it has expired, removes registry and scheduled tasks and leaves the machine un-updated and without a new schedule.
It would be nice, if the user was prompted with the ‘last warning’ if the above scenario occurs.
/Michael
TSLaunch.exe is great, solves a major people issue in my office. I can’t seem to get the console extension to work. When I launch it, I get an error “The target principal name is incorrect. Cannot generate SSPI context.”. I am not sure what I missed.
Paul
This could be caused by a number of reasons; the simplest being, you’re logged on with a password that has now expired or been changed? Other possibilities are bad SPNs or malfunctioning DNS, you have to investigate such problems by scrutinizing relevant logs in your environment.
Hi,
Great tool!
Have an issue with Scheduled installations that are set to start the installation automaticly. Get this error every time on all clients that I have tested on:
“Failed to find a Schedule for upgrade.”
The task is present in tack scheduler and the set schedule is also set i registry. What am I doing wrong? (It works when then the installation is triggerd via the “Upgrade now” button.)
I also ran into this issue. Has anyone figured this out? I see that the task scheduler is missing the scheduled task but not sure why.
Hello,
Great Tool, works great. However, I have an issue with the SCCM console extension. I am not able to find the TS Deployments related to the upgrade. I only see the OSD task sequences. Am I missing anything?
Hi! I guess this is not possible, but I would like to check with you. We would like to use TSLaunch for other sequences than Windows upgrade. Driver update for example. But I guess this is not possible due to the use of windows buildnumber to determine if TSlanch should run or not?
Har ni någon ny version/uppdateringar på gång?
Yes!
Hi Jörgen! I’ve been using the Win10 Upgrade Tools for a while and they are great!
But I’ve recently upgraded to ConfigMgr 2010 (5.2010.1093.1900 console version) and now when I try to use the buttons to run or stop TSLaunch in the console extension it gives me an error saying that the ‘Create and Run Scripts’ feature must be enabled. However, in version 2010 of Config Manager this is no longer an optional feature, but instead is just enabled by default and doesn’t appear on the list of available features to turn on or off. Perhaps the TSLaunch console extension is looking for it and not finding it any more so assuming that it is turned off?!
Using the scripts was an extremely useful feature for me, and I’m sure a lot of other people. Do you know if this is something that could be fixed? If there would be a better place for me to ask this, please do let me know!
Thanks,
David
Is there any way to get in touch with Johan (except twitter – don’t have an account).
I’m trying to use TSLaunch 2.4.21014.01 with console extension 2.3.19109.1.
When I try to use the console extension it seems to work until I click on “Launcher” and then selecting any device. The console immediately crashes.
I’ve installed the extension on the Site Server, on my own device and on a couple other devices as well.
It just doesn’t work. On all devices it crashes.
When I used console extension 2.3.18325.1 it worked fine. But now even when reinstalling this older version it keeps crashing the console.
using the latest version, we are getting .net errors logged in event log.
the generic error means the app doent run.
on a test pc 2/3 it fails
how can we troubleshoot?
IS THERE AN OLDER VERSION WE CAN TRY?
I’m also running 2010 (5.2010.1093.3100) and get the “‘Create and run script’ feature must be enabled.” prompt. I enabled scripts in an early version and the TSLaunch scripts seam to work fine from the right-click options in Assets and Compliance.
I’m also experiencing crashed when I click in the lists under the “TSlaunch Status” utility. I’m running 2.4.21014.01 from January. It looked like there might have been a new version Upgrade Tools version at https://www.onevinn.com/marketplace but the link downloads the TSBackground.zip utility instead. I tried contacting them but all I saw was the Bot IM helper which was no help.
@Fredrik Mattsson, yes you can use TSLaunch for other task sequences such as driver updates, but you need change the build number in the XML to a number (must be a number) that will never be used as an OS build number (like 100000). Also, you’ll need to set “DoNotRemoveLogonScheduledTaskOnLaunch” to false or else TSLaunch will run again after completion to “verify the OS has been upgraded” and will then kick off the task sequence again thinking the OS upgrade failed.
Jorgen, is it possible to force an upgrade after the time set in “DeploymentValidNoDays” has expired? We have users who keep hitting minimize for the entire “Valid Days” time period and then TSLaunch cleans up after that period and the OS is never upgraded.
I thought I had used “ForceUpgradeAfterCountdown” to do this in past versions, but I confirmed in the documentation and testing that this is in reference to the “session” or “countdowntime.”
Thanks for this tool and thanks for the help.
I came here to ask the same question Ben Floyd was asking about forcing the upgrade after the “DeploymentValidNoDays” has expired. It would be great to have this option possible. I just started using this awesome tool. Thank you for making this available.
For some reason I cannot get this working outside of DEBUG mode; it just won’t launch. At first I was getting a side-by-side error, but I fixed that by installing the latest x64/x86 c++ redistributables. Now I get a Unhandled exception: System FormatException error. I’m thinking it has something to do with date/time formatting, but I’m not sure. is there anything I can post/send to help troubleshoot this issue?
Hi, Have you configured a valid date/time?
Regards,
Jörgen
Hello, I want to use the tool the first time and recognized one limitation: when using a TS with several OS upgrade images with different languages and deploying it as ‘Available’ with the ‘Pre-download content for this TS’ option, the tool checks all of the images in the step ‘CheckContentAvailable’ – so is there any chance to exclude OS upgrade images in this check ? Otherwise it would only be possible to split the TS depending on the languages to use the tool.
Thanks a lot, Clemens
P.S. The tool is great at all !
i just did a new LAb install of CM and also installed the TSLaunch ConfigMgr extension, but the extension doesn’T show up in the management console.
CM: 2211
Console: 5.2211.1061.1300
OS: Server 2022 EN
Is there a logfile that i can check or could there be any prerequisites i’m missing?
Thx for the tool and your help!
Frank
Can anyone please share the link to download TSLaunch ConfigMgr extension version 2.3.19109.1. Installer file got deleted from Windows\Installer folder and now I cant upgrade to new version now.
https://github.com/Josch62/Experimental/blob/master/TSLaunch%20ConfigMgr%20extension%202.3.19109.1.msi