MDT 2010 New Feature #8: No more visible command windows when booting Lite Touch Windows PE
In MDT 2008, the Windows PE startup process was something close to this:
- Windows PE started CMD.EXE to run STARTNET.CMD.
- STARTNET.CMD started WPEINIT.EXE.
- WPEINIT.EXE initialized networking and optional components, then ran “WSCRIPT.EXE X:\Deploy\Scripts\LiteTouch.wsf”.
- LiteTouch.wsf started a minimized CMD.EXE, for troubleshooting, then runs the Welcome or Deployment Wizard.
That meant that there was always a command window visible on the screen, as well as another minimized one that could be used for troubleshooting. Some didn’t like that cluttered look, so they hooked in utilities to hide these command windows.
With MDT 2010, that will no longer be necessary. The startup process has been modified:
- Windows PE starts BDDRUN.EXE.
- BDDRUN.EXE starts WPEINIT.EXE.
- WPEINIT.EXE initialized networking and optional components, then ran “WSCRIPT.EXE X:\Deploy\Scripts\LiteTouch.wsf”.
- LiteTouch.wsf runs the Welcome or Deployment Wizard.
That means no command windows at all:
Well, what if you really want a command prompt so that you can do some troubleshooting (e.g. checking if a network driver has been installed)? Simple, press the F8 key and one will be started for you. (This command prompt should behave like the one in ConfigMgr 2007: as long as you have a command prompt open, the machine won’t reboot. However, there is a problem with that in MDT 2010 Beta 2 so the machine will reboot even with the command prompt open. That should be fixed before the final release of MDT 2010.)
Comments
Anonymous
January 01, 2003
What was left in the MININT folder? We wouldn't normally clean up the sysprep folder - that's something the OS should take care of doing. -MichaelAnonymous
January 01, 2003
Thx again :). I have noticed more actions are availble throught the database section including FinishAction option. I have set it to REBOOT but it seems that the process does not restart at the end of the sequence. Also i have been fighting with MININT folders and Sysprep folders being left behind containing unattend.txt and sysprep.inf (in XP case). The Logs say that the tas sequence completed successfully. I have tries invoking LTICleanup explicitly but that caused more problms. I use only LiteTouch (no sms, configmgr, etc). My workaround was to add a custom task at the end of the sequence that waits fot the TS process to finish, then removes MININT and sysprep folders and restarts the machine. However it would be grand to achieve that within the task sequence (i.e. full cleanup and reboot with FinishAction). How can i acheve that? Am i missing something?Anonymous
January 01, 2003
The comment has been removedAnonymous
January 01, 2003
Thanks. I used the unattend.xml file to do it.Anonymous
January 01, 2003
Not without modifying the LiteTouch.wsf script. Right now, we will always display the wizard if an error occurs, and the machine won't reboot (it will just open a command prompt) if the process doesn't complete with a return code of 0. So the changes would have to reset the return code to 0 before it gets to the summary wizard display (so that SkipFinalSummary=YES works). -MichaelAnonymous
January 01, 2003
Sorry, I meant to show the cmd that executes the wpeinit.exe app. Apols for the badly explained question. Didn't need to use the /debug:true switch after all. Found the ztibackup_imagex.log and found that I was running out of space on the source HDD. Ended up finding the issue in the MS KB.Anonymous
January 01, 2003
Hmm actually what i would like to have is Wiard error message, logs dumped onto the share and then reboot (no shell). Is this possible? Also what is the best place to submit feture requests and bug reports for MDT 2010 Beta 2Anonymous
January 01, 2003
Michael, We have successfully moved from BDD to MDT 2010 except for one little niggle, the welcome screen (same as shown in this post)! We can't seem to get it to stop showing up. We have added skipbddwelcome to bootstrap.xml and custom.xml and even tried skipwizard too. Once we click run it never prompts us again and installs perfectly but this little screen won't go away. Can you point me in the right direction? Thank you, JoshAnonymous
January 01, 2003
Yes, press the F8 key. -MichaelAnonymous
January 01, 2003
Duh!, we forgot to move the rebuilt image over to WDS. Thank you!Anonymous
January 01, 2003
Great work Mike. What build is this? I have not seen this graphic with my 7100 build. Regards, ThomasAnonymous
January 01, 2003
Thanks Michael. Is there a way to alter the default failure behaviour of WinPE? Atm it displays a Wizard error message, dumps the Logs to a share and exits to a shell. What i would like to have is no Wizard error message, no shell just dump the Logs and reboot. Is this possible?Anonymous
January 01, 2003
This is with MDT 2010 Beta 2 (build 5.0.1210.0), which works with Windows 7 RC (build 7100).Anonymous
January 01, 2003
You need to generate new boot images once you change the bootstrap.ini to add the SkipBDDWelcome parameter. (You can import the new WIM into WDS, or burn a new ISO to CD.) -MichaelAnonymous
January 01, 2003
So is there a way of showing the cmd prompt now? I'm trying to debug a capture image issue (image capture fails at about the 1.4Gb mark, wim gets deleted and rc = 2 is returned). I was hoping to use /debug:true in the unattend.xml file in PE to trace what's happening but 2010 B2 doesnt' show it (which is otherwise a great change).Anonymous
January 01, 2003
Hello. I'm trying to add VNC into WinPE. We run this at a lot of remote sites without technicians, and it would be a LOT easier for us to be able to have someone boot to a CD, and then we could connect with VNC to the WinPE. It's working great, but my problem is...I can't figure out how to get the script to start before the WinPE bootup. I added my extra files to the WIM file, and if I manually run the vbscript, it works great. It turns off the firewall and then starts the VNC process. Where could I insert this in such that it would start before the deployment starts? From the looks of it, I would either need to do some serious modifying (maybe replace one of the executables with a dummy exe that runs the vbscript and then runs the original executable, or I could try to slip something into the litetouch.wsf file, but I really hate to do that. Do you have any advice on how I could run a script as part of the startup of WinPE during a deployment with MDT2010?Anonymous
January 01, 2003
I was wondering where did the shell go. Is there a way to completely block access to that shell?. For debugging it is great but for final deployment it poses a security risk (i.e. info such as passwds, keys and other sensitive information stored in unattend.xml could be obtained through it).Anonymous
January 01, 2003
FarmerPete, Check out the Unattend.xml on the boot CD you can modify this to start you app (VNC) and then start wpeinit. some links that explain http://technet.microsoft.com/en-us/library/cc766521(WS.10).aspx http://deploywindows.net/archives/449 hopefully this gets you one the track :-)Anonymous
January 01, 2003
Hi, I just noticed the "Run the Recovery Wizard" option in your winPE. How can i do that? Is it a custom created option? ThanksAnonymous
January 01, 2003
Oki doki the FinishAction is working now although i had to add it to CustomSettings.ini (besides the entry in the database). However the completion of the TS sequence does not clean up MININT and sysprep folders. Do i have to explility invoke LTICleanup.wsf or is there another way?Anonymous
January 01, 2003
You can turn off the F8 prompt by editing the winpeshl.ini file in the "Templates" directory. Right now it says "/bootstrap"; change it to instead say "/bootstrapNoSF8". -MichaelAnonymous
January 01, 2003
MININT contains unattend.xml, unattend.xml.bak (unattend.txt in canse of XP) with plain text passwords and other sensitive info + some TS related dlls in a TOOLS/X64 subfolder. As for sysprep folder if no capture is specified should this file/folder exist? Cheers Lukas