Installation and Upgrade Bypass (Automate) Windows 11 OOBE


Windows_11.png

Windows 11 clean install is done in three phases:

1 Boot from install media, run Windows Setup
2 Reboot, configure hardware devices
3 Reboot, run Windows Welcome (OOBE)

In first phase, user needs to select system language, keyboard layout and formats. Phase 2 is done without user interaction In OOBE, phase 3, user is asked about region, keyboard, telemetry, ad preferences,and so on.

This tutorial will show how to automate phase 3, OOBE, with a simple script (an answer file). Boot from install media, select disk or partition where to install Windows, and take a break. When you come back to PC, Windows is installed, your user account created, and Welcome screen waiting for you to sign in.

Additional bonus: WIndows 11 Home edition does no longer by default allow user to setup Windows with a local account, instead a Microsoft account is required. The same is coming to Pro edition, too; Windows 11 PRO Insider Dev build 22557 (16-FEB-2022) is the first PRO build requiring Internet connection and Microsoft account, when setting up.

With this simple method, users can continue setting up Windows 11 with a local account.




Contents

How to bypass Windows 11 OOBE





Part 1

Mount Windows image for offline servicing


1.1 If your install media is an ISO file, you need to mount it first as a virtual DVD drive (right click, select Mount), and copy its contents to a folder. Create first a folder, in this example D:\ISO_Files, and copy everything, all files and folders, from mounted ISO to the new folder:

Copy ISO Files.jpg


1.2 Open an elevated PowerShell (Run as administrator), enter following command to check available Windows 11 editions:

Get-WindowsImage -ImagePath D:\ISO_Files\Sources\install.wim | Format-Table ImageIndex, ImageName

If you have already a WIndows 11 USB install media, for example if the USB is currently shown as W: drive, enter following command to get list of editions:

Get-WindowsImage -ImagePath W:\Sources\install.wim | Format-Table ImageIndex, ImageName

1.3 Check Image Index number for the edition which you want to mount and edit:

Get Editions.jpg


In this example, I will select Windows 11 Pro edition to be mounted, Index 3.

1.4 Create a mount point folder. In this example, I create folder C:\Mount.

1.5 Mount selected Windows edition (Image Index) with following command:

Install.wim image in folder on HDD / SSD:

Mount-WindowsImage -ImagePath D:\ISO_Files\Sources\install.wim -Index 3 -Path C:\Mount

Install.wim image in USB install media:

Mount-WindowsImage -ImagePath W:\Sources\install.wim -Index 3 -Path C:\Mount

Mounting Image.jpg



Part 2

Add answer file to specific edition


2.1 Browse to folder C:\Mount\Windows, and create a new folder:

New Folder.jpg


2.2 Rename the new folder. The name must be Panther:

Panther.jpg


2.3 Open an elevated Notepad (Run as administrator). Copy the following answer file script, and paste it to elevated Notepad:

XML:
<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
    <settings pass="oobeSystem">
        <component name="Microsoft-Windows-International-Core" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <InputLocale>0809:0000040b</InputLocale>
            <SystemLocale>EN-GB</SystemLocale>
            <UILanguage>EN-GB</UILanguage>
            <UILanguageFallback>EN-GB</UILanguageFallback>
            <UserLocale>EN-GB</UserLocale>
        </component>
        <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <OOBE>
                <VMModeOptimizations>
                    <SkipAdministratorProfileRemoval>false</SkipAdministratorProfileRemoval>
                </VMModeOptimizations>
                <HideEULAPage>true</HideEULAPage>
                <HideLocalAccountScreen>true</HideLocalAccountScreen>
                <HideOnlineAccountScreens>true</HideOnlineAccountScreens>
                <HideOEMRegistrationScreen>true</HideOEMRegistrationScreen>
                <HideWirelessSetupInOOBE>true</HideWirelessSetupInOOBE>
                <ProtectYourPC>1</ProtectYourPC>
                <UnattendEnableRetailDemo>false</UnattendEnableRetailDemo>
            </OOBE>
            <UserAccounts>
                <LocalAccounts>
                    <LocalAccount wcm:action="add">
                        <Description>Local admin</Description>
                        <DisplayName>Admin</DisplayName>
                        <Group>Administrators</Group>
                        <Name>Admin</Name>
                    </LocalAccount>
                </LocalAccounts>
            </UserAccounts>
            <RegisteredOrganization>Eleven Forum</RegisteredOrganization>
            <RegisteredOwner>Kari</RegisteredOwner>
            <TimeZone>W. Europe Standard Time</TimeZone>
         </component>
    </settings>
    <settings pass="specialize">
        <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <OEMInformation>
                <Manufacturer>Eleven Forum</Manufacturer>
                <Model>HP ProBook 470 G5</Model>
                <SupportHours>24/7</SupportHours>
                <SupportPhone>+44 123 4567 8910</SupportPhone>
                <SupportProvider>Eleven Forum</SupportProvider>
                <SupportURL>https://www.elevenforum.com</SupportURL>
            </OEMInformation>
            <ComputerName>*</ComputerName>
            <OEMName>Eleven Forum</OEMName>
            <RegisteredOrganization>Eleven Forum</RegisteredOrganization>
            <RegisteredOwner>Admin</RegisteredOwner>
            <TimeZone>W. Europe Standard time</TimeZone>
        </component>
    </settings>
</unattend>
2.4 Edit answer file in elevated Notepad to meet your requirements. Line numbers in following edit instructions refer to this screenshot:

Edit XML.jpg

(Click screenshot to pop out, click again to expand.)
  • Line 5 = Preferred input language (keyboard layout). In this example, I set Finnish keyboard (0000040b) in UK English Windows (0809)
  • Lines 6 to 8 = Install media language
  • Line 9 = PC region / location
    • Some other keyboard / region codes:
      • Brazil - Portuguese > 0416:00000416, pt-BR
      • Canada - English > 1009:00000409, en-CA
      • Canada - French > 0c0c:00011009, fr-CA
      • France - French > 040c:0000040c, fr-FR
      • Germany - German > 0407:00000407, de-DE
      • UK - English > 0809:00000809, en-GB
      • USA - English > 0409:00000409, en-US
      • Complete list: Default Input Profiles (Input Locales) in Windows | Microsoft Docs
  • Line 27 = Initial user account's description, can be any alphanumerical string
  • Line 28 = Initial user account name as shown in Welcome Screen
  • Line 29 = User group for initial user account, must be Administrators
  • Line 30 = User profile and folder name for initial user
  • Linbe 34 = Organization, any alphanumerical string
  • Line 35 = PC owner, any alphanumerical string
  • Lines 36 & 53 = Time zone
    • About TimeZone value: If no value given, Windows defaults to time zone according to language of the install media. US English Windows defaults to Pacific time, Finnish Windows to time in Finland, UK English Windows to UK time, Japanese Windows to time in Japan. In my case as I use UK English Windows which would default to UK time but I live in Germany, I want to set time zone accordingly to CET or as Windows understands it, to W. Europe Standard Time.
    • In same way, if answer file and USB install media we are preparing would be used in East Coast USA, it would be a good idea to set time zone to EST / EDST setting TimeZone value Eastern Standard Time.
    • Full list of valid time zone names: Microsoft Time Zone Index Values
  • Lines 42 through 52 = PC Manufacturer, PC Model, Support hours, Phone, Provider, URL, OEM Name, Organization, Owner, can be any alphanumerical string
2.5 When edited, save the answer file in folder you created in steps 2.1 & 2.2. Filename must be unattend.xml, Save As Type All files:

Save Answer File.jpg

Save a copy of the answer file to a safe location. Once done, you can always use the same file with all Windows versions and editions in the future. No need to redo this process.



2.6 IMPORTANT! Close all File Explorer windows showing C:\Mount folder, or any of its subfolders!



Part 3

Commit (save) changes to Windows image


2.6 In an elevated PowerShell, enter following command to save edited Windows image:

Dismount-WindowsImage -Path C:\Mount -Save



That's it. If you were servicing an install.wim file from a folder on HDD / SSD, that folder now contains everything required to create a new ISO file, see instructions on our sister site Ten Forums:


In case of a USB, it's ready to be used to install Wndows 11.

IMPORTANT NOTICE: PC must be connected to Internet for this method to work. If not, the automated OOBE will be interrupted and show this:

No Internet.jpg


Stay safe, geeks, vaxxed and masked.

Kari
 

Attachments

  • Windows_11.png
    Windows_11.png
    152 bytes · Views: 139
Last edited:
IMPORTANT NOTICE: PC must be connected to Internet for this method to work. If not, the automated OOBE will be interrupted and show this:
I tested it on a notebook and it didn't ask for SSID or WLAN password.
I also tested it on a PC with unplugged LAN cable.
In both cases no OOBE screen interrupts.

But OOBE interrupts for user account password.
Is there a way to skip without entering a password - empty password?
 

My Computer

System One

  • OS
    Windows 11
I tested it on a notebook and it didn't ask for SSID or WLAN password.
I also tested it on a PC with unplugged LAN cable. In both cases no OOBE screen interrupts.

The tutorial is kind of "ahead of its time"...

Windows Insider Developer Channel Build 22557, released 16-FEB-2022, brought this to Windows 11. OOBE simply requires Internet connection. Although this feature is not yet present in General Release and Beta Channel builds, it will come to them in near future. I preferred to tell to do something that works in every build.

But OOBE interrupts for user account password.

That is normal, as it should be.

Is there a way to skip without entering a password - empty password?

You need three mouse clicks to set up a local account without password.

1. Click Sign in:

Sign in.jpg


2. Click OK:

Password must be changed.jpg


3. Click Submit button (arrow point right) leaving all three text fields empty:

Empty password.jpg


You now have your local account set without password.

Kari
 

My Computers

System One System Two

  • OS
    Windows 11 PRO x64 Dev
    Manufacturer/Model
    Hyper-V Virtual Machine (host in System 2 specs)
    CPU
    Intel Core i7-8550U
    Memory
    6 GB
    Graphics Card(s)
    Microsoft Hyper-V Video
    Monitor(s) Displays
    Laptop display (17.1") & Samsung U28E590 (27.7")
  • Operating System
    Windows 11 PRO x64 Dev Channel
    Computer type
    Laptop
    Manufacturer/Model
    HP HP ProBook 470 G5
    CPU
    Intel Core i7-8550U
    Motherboard
    HP 837F KBC Version 02.3D.00
    Memory
    16 GB
    Graphics card(s)
    Intel(R) UHD Graphics 620 & NVIDIA GeForce 930MX
    Sound Card
    Conexant ISST Audio
    Monitor(s) Displays
    Laptop display (17.1") & Samsung U28E590 (27.7")
    Hard Drives
    128 GB SSD & 1 TB HDD
    Mouse
    Wireless Logitech MSX mouse
    Keyboard
    Wireless Logitech MK710 keyboard
    Internet Speed
    100 Mbps down, 20 Mbps up
    Browser
    Edge Chromium Dev Channel
    Antivirus
    Windows Defender
    Other Info
    2 * 3 TB USB HDD
    6 TB WD Mirror NAS
Thank you for your work.

You need three mouse clicks to set up a local account without password.

But with this 3 mouse clicks it is not an unattended installation.

In the Microsoft specs I found this complement:
XML:
         <Password>
            <Value></Value>
            <PlainText>true</PlainText>
         </Password>

I add this after <LocalAccount wcm:action="add">

Now it is a full unattended installation (without a password).
 

My Computer

System One

  • OS
    Windows 11
But with this 3 mouse clicks it is not an unattended installation.
OOBE is fully unattennd, only stopping to wait user to sgn in. Sign-in screen and procedure is normal Windows, no more OOBE.

Kari
 

My Computers

System One System Two

  • OS
    Windows 11 PRO x64 Dev
    Manufacturer/Model
    Hyper-V Virtual Machine (host in System 2 specs)
    CPU
    Intel Core i7-8550U
    Memory
    6 GB
    Graphics Card(s)
    Microsoft Hyper-V Video
    Monitor(s) Displays
    Laptop display (17.1") & Samsung U28E590 (27.7")
  • Operating System
    Windows 11 PRO x64 Dev Channel
    Computer type
    Laptop
    Manufacturer/Model
    HP HP ProBook 470 G5
    CPU
    Intel Core i7-8550U
    Motherboard
    HP 837F KBC Version 02.3D.00
    Memory
    16 GB
    Graphics card(s)
    Intel(R) UHD Graphics 620 & NVIDIA GeForce 930MX
    Sound Card
    Conexant ISST Audio
    Monitor(s) Displays
    Laptop display (17.1") & Samsung U28E590 (27.7")
    Hard Drives
    128 GB SSD & 1 TB HDD
    Mouse
    Wireless Logitech MSX mouse
    Keyboard
    Wireless Logitech MK710 keyboard
    Internet Speed
    100 Mbps down, 20 Mbps up
    Browser
    Edge Chromium Dev Channel
    Antivirus
    Windows Defender
    Other Info
    2 * 3 TB USB HDD
    6 TB WD Mirror NAS
Back
Top Bottom