Use Unattend.xml to Fix Windows 10 SCCM Image Stuck On “Just a Moment…” Screen

EDIT: While this method still works, it has officially been depreciated by Microsoft.  I write about the newer supported answer file in the article Use Unattend.xml to Skip Windows 10 OOBE during an SCCM Task Sequence.

Successfully Tested On: Microsoft System Center Configuration Manager versions 2012 - 1903, Windows 10 Enterprise versions 1507 - 1903, Windows 10 Long-Term Servicing Branch (LTSB) versions 1507 & 1607

Since the release of Windows 10, there have been a few new challenges arise when capturing and applying images.  One issue I experienced is images hanging on a “Just a moment…” screen for anywhere from 15 minutes to over an hour:

just-a-moment

I use SCCM 2012 MDT task sequences for majority of my images, and while the task sequence would eventually complete this issue added a considerable amount of time to the process.

Use an Answer File

After a bit of research and testing, I determined OOBE (Windows’ Out-Of-Box Experience wizard) to be the culprit, and the problem can be corrected by skipping OOBE altogether.  This is done by an unattend XML that is applied during imaging.  As pictured below, I was already using and unattend.xml within my MDT task sequences:

UnattendXML.png

I found two XML attributes that helped, SkipMachineOOBE and SkipUserOOBE, and neither were a part of my existing XML.  I dug into my Windows Settings package source files and edited unattend.xml, adding both attributes and setting them to true in the OOBE section:

UnattendXMLAttributes

After saving the XML and updating the Windows Settings package content on the SCCM distribution point, Windows 10 task sequences started proceeding without hanging on the “Just a moment…” screen and were much more timely.  Success!

If you don’t have an existing Unattend.xml…

…then you can create a simple one from the code below.  Copy and paste the following into a text editor and save as unattend.xml (not .txt):

<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
     <settings pass="oobeSystem">
          <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State">
               <OOBE>
                    <HideWirelessSetupInOOBE>true</HideWirelessSetupInOOBE>
                    <NetworkLocation>Work</NetworkLocation>
                    <SkipMachineOOBE>true</SkipMachineOOBE>
                    <SkipUserOOBE>true</SkipUserOOBE>
               </OOBE>
          </component>
     </settings>
</unattend>

Create a new SCCM package that includes the XML as source files, then apply the XML during your task sequence like pictured above.

14 comments

  1. you have got an amazing blog here! would you wish to make some invite posts on my weblog?

    Like

  2. […] These settings have since been deprecated but do technically still work.  I discuss using this legacy method in one of my previous articles Use Unattend.xml to Fix Windows 10 SCCM Image Stuck On “Just a Moment…” Screen. […]

    Like

  3. Thanks – that worked for me

    Liked by 1 person

  4. This works but means I have to manually attend and type the Administrator password to do the rest of the deployment. Anything else not required in TS?

    Liked by 1 person

    1. Hi Rikesh. An answer file like this works with both zero touch and user-driven task sequences, and once started the sequence will fully complete without requiring any intervention on the client end. If you’re being prompted for a Windows login before your task sequence fully finishes (I’m assuming that’s what you mean when you say “manually attend and type the Administrator password”), it sounds like there’s something else interrupting your sequence.

      Like

  5. Thanks, this has been doing my nut in!

    Liked by 1 person

  6. Thanks for the write-up. I didn’t realize that you can specify an unattend.xml with only your desired settings, very useful. I was figuring I had to reference an unattend.xml with all required settings to bypass oobe.

    Liked by 1 person

    1. Microsoft does recommend referencing each individual OOBE page in the answer file, but it is actually not required.

      Like

  7. Robbie Preece · · Reply

    interesting, those two settings you mentioned are depreciated fyi.

    Like

    1. They are and have been deprecated for years, yes. Despite this, Microsoft has confirmed that enabling these settings will still skip OOBE altogether. The newer supported method involves addressing each individual OOBE page in the answer file, but I haven’t yet built a longer XML like that since this older method is still working fine in my environment. See this article for details on skipping individual pages: https://docs.microsoft.com/en-us/windows-hardware/customize/desktop/automate-oobe

      Like

      1. I now have a more recent article where I have built the longer XML that is supported by Microsoft: https://qtechbabble.wordpress.com/2019/12/17/use-unattend-xml-to-skip-windows-10-oobe-during-sccm-task-sequence/

        Like

  8. Thanks for sharing !

    Liked by 1 person

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: