WindowsADK

WindowsADK

 

This time around I will describe how to fully automate the Windows Setup process by using an unattended file.

"Autounattend.xml" is the Windows Unattended XML file that automates the whole Windows Setup experience.

It allows you to install Windows hands-off (use your hands to hold your son/daughter or just grab a beer).

IMPORTANT NOTE: An unattended answer file such as Autounattend.xml takes precedence over ei.cfg and PID.txt.

In other words, IF you use "Autounattend.xml":

  • Windows Setup will IGNORE any EI.cfg and/or PID.txt files content!

An Autounattend.xml doesn’t necessarily have to reside within the media you use to install Windows (ie. the Windows DVD or a custom USB KEY).

You can simply place Autounattend.xml to the ROOT of any of your spare USB KEYs (FAT32 or NTFS).

BEFORE running the Windows Setup:

  1. Plug the USB KEY with Autounattend.xml to a blank computer.
  2. Boot & Run the Windows Setup.
  3. Windows Setup will automatically recognise (and use) your Autounattend.xml and self-configure itself.

You will use ADK to create your Autounattend.xml file.

Proceed as follows:
- Make sure you have ~60GB+ Free on your "technician PC".
- Download and install the Windows ADK | Microsoft Docs for your version of Windows.
- Run Windows System Image Manager (WSIM).
- Familiarize with WSIM by loading an install.wim image (ie. grab one off your Windows DVD\Sources-Folder!).
Example:
1. File -> "Select Windows Image.."
2. Point to install.wim grabbed from your Windows install Media (copy locally to your SSD for best speed).
3. Answer YES when prompted to create a catalog.

  • Keep familiarizing with WSIM...
  1. (Ignore the "Distribution Share"-section for now, even if it sounds cool!).
  2. On the lower-left you have the Windows Image Catalog Components&Packs (that you just loaded by opening install.wim).
  3. In the middle pane, you have the "Answer File"-section.
    That allows you to customise the Setup phases.
    (Example Windows 8.1 Setup phases –> http://technet.microsoft.com/en-us/library/hh824982.aspx)

- "1WindowsPE" is what is currently running while you are on the Windows Setup.
- "4Specialize" and "7oobeSystem" are also important in order to customise some basics.

 

'Nuff said.

Hope my primer convinced you to experiment with WSIM.

In case you feel like testing a pre-made Autounattend.xml by skipping all the details, here's my (very basic) pre-made Windows 8.1 Pro Autounattend.xml answer file example.

Please note: my Autounattend.xml works with Windows 8.1 Pro, a UEFI Firmware and it automatically partitions your Blank Disk as a GPT Disk by following my Best Windows 8.1 UEFI/GPT partitioning scheme.

It also creates a new Local Administrator User as follows:

User Name: pwrusr

Password: "P@ssw0rd" (without quotes).

 

Win8.1 Pro Autounattend.xml example.

my Autounattend.xml:

<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
<settings pass="windowsPE">
<component name="Microsoft-Windows-International-Core-WinPE" 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">
<SetupUILanguage>
<UILanguage>en-US</UILanguage>
</SetupUILanguage>
<InputLocale>en-US</InputLocale>
<SystemLocale>en-US</SystemLocale>
<UILanguage>en-US</UILanguage>
<UILanguageFallback>en-US</UILanguageFallback>
<UserLocale>en-US</UserLocale>
</component>
<component name="Microsoft-Windows-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">
<DiskConfiguration>
<Disk wcm:action="add">
<CreatePartitions>
<CreatePartition wcm:action="add">
<Order>1</Order>
<Size>520</Size>
<Type>EFI</Type>
</CreatePartition>
<CreatePartition wcm:action="add">
<Order>2</Order>
<Size>2054</Size>
<Type>Primary</Type>
</CreatePartition>
<CreatePartition wcm:action="add">
<Order>3</Order>
<Size>128</Size>
<Type>MSR</Type>
</CreatePartition>
<CreatePartition wcm:action="add">
<Order>4</Order>
<Size>16390</Size>
<Type>Primary</Type>
</CreatePartition>
<CreatePartition wcm:action="add">
<Extend>true</Extend>
<Order>5</Order>
<Type>Primary</Type>
</CreatePartition>
</CreatePartitions>
<ModifyPartitions>
<ModifyPartition wcm:action="add">
<Format>FAT32</Format>
<Label>System</Label>
<Order>1</Order>
<PartitionID>1</PartitionID>
</ModifyPartition>
<ModifyPartition wcm:action="add">
<Format>NTFS</Format>
<Label>WinRE</Label>
<Order>2</Order>
<PartitionID>2</PartitionID>
<TypeID>de94bba4-06d1-4d40-a16a-bfd50179d6ac</TypeID>
</ModifyPartition>
<ModifyPartition wcm:action="add">
<Order>3</Order>
<PartitionID>3</PartitionID>
</ModifyPartition>
<ModifyPartition wcm:action="add">
<Format>NTFS</Format>
<Label>Recovery</Label>
<Order>4</Order>
<PartitionID>4</PartitionID>
</ModifyPartition>
<ModifyPartition wcm:action="add">
<Format>NTFS</Format>
<Label>Windows</Label>
<Letter>C</Letter>
<Order>5</Order>
<PartitionID>5</PartitionID>
</ModifyPartition>
</ModifyPartitions>
<DiskID>0</DiskID>
<WillWipeDisk>true</WillWipeDisk>
</Disk>
</DiskConfiguration>
<UserData>
<ProductKey>
<WillShowUI>OnError</WillShowUI>
<Key>GCRJD-8NW9H-F2CDX-CCM8D-9D6T9</Key>
</ProductKey>
<AcceptEula>true</AcceptEula>
</UserData>
<ImageInstall>
<OSImage>
<InstallTo>
<DiskID>0</DiskID>
<PartitionID>5</PartitionID>
</InstallTo>
<WillShowUI>OnError</WillShowUI>
</OSImage>
</ImageInstall>
</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">
<ComputerName>*</ComputerName>
</component>
</settings>
<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" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<OOBE>
<HideEULAPage>true</HideEULAPage>
<HideWirelessSetupInOOBE>true</HideWirelessSetupInOOBE>
<NetworkLocation>Work</NetworkLocation>
<ProtectYourPC>1</ProtectYourPC>
<HideLocalAccountScreen>true</HideLocalAccountScreen>
<HideOEMRegistrationScreen>true</HideOEMRegistrationScreen>
<HideOnlineAccountScreens>true</HideOnlineAccountScreens>
<SkipUserOOBE>true</SkipUserOOBE>
</OOBE>
<UserAccounts>
<LocalAccounts>
<LocalAccount wcm:action="add">
<Password>
<Value>UABAAHMAcwB3ADAAcgBkAFAAYQBzAHMAdwBvAHIAZAA=</Value>
<PlainText>false</PlainText>
</Password>
<Description>Local Administrator</Description>
<DisplayName>pwrusr.com</DisplayName>
<Group>Administrators</Group>
<Name>pwrusr</Name>
</LocalAccount>
</LocalAccounts>
</UserAccounts>
<AutoLogon>
<Password>
<Value>UABAAHMAcwB3ADAAcgBkAFAAYQBzAHMAdwBvAHIAZAA=</Value>
<PlainText>false</PlainText>
</Password>
<Enabled>true</Enabled>
<Username>pwrusr</Username>
</AutoLogon>
<!-- To customise your Time Zone, uncomment the below: -->
<!-- <TimeZone>Cen. Australia Standard Time</TimeZone> -->
<!-- IF Time Zone not declared, en-US should default to Pacific Standard Time -->
        </component>
</settings>
</unattend>

 

Example on How to Use Autounattend.xml

Open Notepad.

Select and copy-pasta the above code.

"Save as" Autounattend.xml into the root folder of one of your FAT32 or NTFS USB Key.

Turn ON a blank Computer and set it to boot from UEFI (ie. DISABLE CSM off the BIOS).

Insert your USB Key with the Autounattend.xml file.

Insert your Windows 8.1 Pro VL Install Media (ie. DVD or USB).

Boot the Windows 8.1 Pro VL Setup from the Install Media.

Sit back and relax - your setup will be automated.

 

How to customise Autounattend.xml?!

There are 2 ways to customise Autounattend.xml

  1. Notepad.
  2. WSIM.

At this point the choice is up to you.

In case you choose Notepad to just modify some basics, here are some pointers to get you going:

If you loaded Autounattend.xml on your WSIM, the most insightful tip I can share with you is (as crazy as it sounds) – to press F1 for Help.

 

Newer versions of Windows require additional changes and-or offer you additional customisation options, but the gist is somewhat still similar to the above process.

 

SRC:

http://blog.augustoalvarez.com.ar/2010/04/21/deploying-windows-7-using-windows-deployment-services-wds-step-by-step-part-ii/

http://forums.mydigitallife.info/threads/35693-Win-8-AutoUnattend-xml-example-amp-request-for-help

 

Rate this post

Ask me anything