MDT 2010 New Feature #8: No more visible command windows when booting Lite Touch Windows PE

MDT 2010 New Feature #8: No more visible command windows when booting Lite Touch Windows PE

  • Comments 22

In MDT 2008, the Windows PE startup process was something close to this:

  1. Windows PE started CMD.EXE to run STARTNET.CMD.
  2. STARTNET.CMD started WPEINIT.EXE.
  3. WPEINIT.EXE initialized networking and optional components, then ran “WSCRIPT.EXE X:\Deploy\Scripts\LiteTouch.wsf”.
  4. 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:

  1. Windows PE starts BDDRUN.EXE.
  2. BDDRUN.EXE starts WPEINIT.EXE.
  3. WPEINIT.EXE initialized networking and optional components, then ran “WSCRIPT.EXE X:\Deploy\Scripts\LiteTouch.wsf”.
  4. LiteTouch.wsf runs the Welcome or Deployment Wizard.

That means no command windows at all:

image

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.)

Leave a Comment
  • Please add 3 and 1 and type the answer here:
  • Post
  • Great work Mike. What build is this? I have not seen this graphic with my 7100 build.

    Regards, Thomas

  • This is with MDT 2010 Beta 2 (build 5.0.1210.0), which works with Windows 7 RC (build 7100).

  • 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).

  • 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".

    -Michael

  • 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?

  • 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 2

  • 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).

    -Michael

  • 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?

  • 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?

  • 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.

    -Michael

  • 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

  • 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).

  • Yes, press the F8 key.

    -Michael

  • 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.

  • Hi,

    I just noticed the "Run the Recovery Wizard" option in your winPE. How can i do that? Is it a custom created option?

    Thanks

Page 1 of 2 (22 items) 12