t0mNight

Win8 autounattend.xml skip product key

14 posts in this topic

Hello!

I'm trying to make autounattend.xml file for auto win8 install. Everyting works great, but after restart install process stops at product key enter screen.

My autounattend.xml file:

<?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="x86" 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>pl-PL</InputLocale>            <SystemLocale>pl-PL</SystemLocale>            <UILanguage>pl-PL</UILanguage>            <UILanguageFallback>pl-PL</UILanguageFallback>            <UserLocale>pl-PL</UserLocale>        </component>        <component name="Microsoft-Windows-Setup" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">            <UpgradeData>                <Upgrade>false</Upgrade>                <WillShowUI>Never</WillShowUI>            </UpgradeData>            <UserData>                <AcceptEula>true</AcceptEula>            </UserData>        </component>    </settings>    <settings pass="specialize">        <component name="Microsoft-Windows-Security-SPP-UX" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">            <SkipAutoActivation>true</SkipAutoActivation>        </component>        <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="x86" 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>PC</ComputerName>        </component>        <component name="Microsoft-Windows-SQMApi" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">            <CEIPEnabled>0</CEIPEnabled>        </component>        <component name="Microsoft-Windows-ErrorReportingCore" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">            <DisableWER>1</DisableWER>            <DefaultConsent>1</DefaultConsent>        </component>    </settings>    <settings pass="oobeSystem">        <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">            <FirstLogonCommands>                <SynchronousCommand wcm:action="add">                    <CommandLine>cmd /C wmic useraccount where "name='user'" set PasswordExpires=FALSE</CommandLine>                    <Order>1</Order>                </SynchronousCommand>            </FirstLogonCommands>            <OOBE>                <HideEULAPage>true</HideEULAPage>                <HideLocalAccountScreen>true</HideLocalAccountScreen>                <HideOnlineAccountScreens>true</HideOnlineAccountScreens>                <HideWirelessSetupInOOBE>true</HideWirelessSetupInOOBE>                <NetworkLocation>Other</NetworkLocation>                <HideOEMRegistrationScreen>true</HideOEMRegistrationScreen>                <ProtectYourPC>1</ProtectYourPC>            </OOBE>            <UserAccounts>                <LocalAccounts>                    <LocalAccount wcm:action="add">                        <Password>                            <Value>UABhAHMAcwB3AG8AcgBkAA==</Value>                            <PlainText>false</PlainText>                        </Password>                        <Name>user</Name>                        <DisplayName>user</DisplayName>                        <Group>Administrators</Group>                    </LocalAccount>                </LocalAccounts>            </UserAccounts>            <RegisteredOwner>xxx</RegisteredOwner>            <RegisteredOrganization>xxx</RegisteredOrganization>            <TimeZone>Central European Standard Time</TimeZone>        </component>        <component name="Microsoft-Windows-International-Core" processorArchitecture="x86" 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>pl-PL</InputLocale>            <SystemLocale>pl-PL</SystemLocale>            <UILanguage>pl-PL</UILanguage>            <UILanguageFallback>pl-PL</UILanguageFallback>            <UserLocale>pl-PL</UserLocale>        </component>    </settings></unattend>

Please help, the target is to skip it at install time :)

Edited by t0mNight
0

Share this post


Link to post
Share on other sites

It would be great, but using key in my case creates 2 more problems:

- if the hardware have OEM key in BIOS... which key will be installed (form bios or from file) ?

- how to store 2 keys (for core and pro) in one XML?

The best way would be bypassing the whoole OOBE stage ( http://technet.microsoft.com/en-us/library/ff716280.aspx ), but it's deprecated in Win8.

(... but works great in Win7 :) )

Edited by t0mNight
0

Share this post


Link to post
Share on other sites

It would be great, but using key in my case creates 2 more problems:

- if the hardware have OEM key in BIOS... which key will be installed (form bios or from file) ?

- how to store 2 keys (for core and pro) in one XML?

Well here's the rub. The product key is what tells Windows 8 whether to look into the BIOS or not. Unfortunately, that product key is not public! The public key will instruct the OS to not look into the BIOS for the activation key, at least that is my understanding of it.

The second question is that you can't have the two different keys in the same XML.

0

Share this post


Link to post
Share on other sites

Yes I install with the generic in my xml & activate with the correct one.

0

Share this post


Link to post
Share on other sites

As I said before, the perfect solution would be simply skip this step. I wonder if it's possible via AutoIT, however I don't even know how to run something in that phase. Another way is to place generic key as MAVERICS and auto activate the system later via some kind of scripting.

That second option should be easier becouse:

- key is possible to extract by:

- and may be placed into: slmgr.vbs -ipk <key>

Somebody have idea to make it unattended?

Edited by t0mNight
0

Share this post


Link to post
Share on other sites

If you install from a USB key instead of a DVD, you can easily swap out different autounattend.xml, depending on the configuration you want to use. I created a batch filed to automate this process. The file must be pre-configured prior to booting and starting the Windows 8 install process with your USB key. I recommend a key of at least 16GB.

@echo off:: In order for this to work you must store your autounatten.xml files and pid.txt files with product keys in a folder called "Pid" in the root of your USB drive:: In the Pid folder create subfolders for each configuration, i.e. "Laptop", "DesktopPC". Place the corresponding pid.txt and autounattend.xml in each folder:: this code searches for the USB key based on the presence of the dummy file "WIN8_USB.ini"FOR %%d IN (D E F G H I J K L M N O P Q R S T U V W X Y Z) DO IF EXIST %%d:\WIN8_USB.ini SET CFDrv=%%d::: This code deletes any previous autounattend setupdel %CFDrv%\sources\pid.txtdel %CFDrv%\Autounattend.xml::This is the menu that you can customize to your own setupcls:: ChoicesCOLOR 1aECHO.ECHO.ECHO ############## Windows 8 Setup Assistant ###############ECHO.ECHO 1. Copy Windows 8.1 KMS key to the clipboard for upgradeECHO.ECHO 2. Configure ***LAPTOP***echo.ECHO 3. Configure ***Desktop PC***ECHO.echo 4. Exitecho.echo.Choice /C 1234 /M "Which Configuration do you want to use?"If Errorlevel 4 Goto endIf Errorlevel 3 Goto 3If Errorlevel 2 Goto 2If Errorlevel 1 Goto 1Goto End:1Echo This will place the KMS Product Key in the clipboardecho Hit "CTRL + C" to quit; any other key to continuepauseecho GCRJD-8NW9H-F2CDX-CCM8D-9D6T9 | clippowershell -Command Mount-DiskImage -ImagePath "%CFDrv%\Windows81.iso"Goto End:2Echo This will install the Laptop Product Key and Unattended fileecho Hit "CTRL + C" to quit; any other key to continueCOPY %CFDrv%\Pid\laptop\pid.txt %CFDrv%\sourcesCOPY %CFDrv%\Pid\laptop\Autounattend.xml %CFDrv%\Goto End:3Echo This will install the Desktop PC Product Key and Unattended fileecho Hit "CTRL + C" to quit; any other key to continueCOPY %CFDrv%\Pid\DesktopPC\pid.txt %CFDrv%\sourcesCOPY %CFDrv%\Pid\DesktopPC\Autounattend.xml %CFDrv%\Goto End:EndCLSCOLOR 1aECHOECHO "Exiting program"pauseExit
Edited by lurk&jerk
1

Share this post


Link to post
Share on other sites

Hello!

I'm trying to make autounattend.xml file for auto win8 install. Everyting works great, but after restart install process stops at product key enter screen.

My autounattend.xml file:

<?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="x86" 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>pl-PL</InputLocale>            <SystemLocale>pl-PL</SystemLocale>            <UILanguage>pl-PL</UILanguage>            <UILanguageFallback>pl-PL</UILanguageFallback>            <UserLocale>pl-PL</UserLocale>        </component>        <component name="Microsoft-Windows-Setup" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">            <UpgradeData>                <Upgrade>false</Upgrade>                <WillShowUI>Never</WillShowUI>            </UpgradeData>            <UserData>                <AcceptEula>true</AcceptEula>            </UserData>        </component>    </settings>    <settings pass="specialize">        <component name="Microsoft-Windows-Security-SPP-UX" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">            <SkipAutoActivation>true</SkipAutoActivation>        </component>        <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="x86" 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>PC</ComputerName>        </component>        <component name="Microsoft-Windows-SQMApi" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">            <CEIPEnabled>0</CEIPEnabled>        </component>        <component name="Microsoft-Windows-ErrorReportingCore" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">            <DisableWER>1</DisableWER>            <DefaultConsent>1</DefaultConsent>        </component>    </settings>    <settings pass="oobeSystem">        <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">            <FirstLogonCommands>                <SynchronousCommand wcm:action="add">                    <CommandLine>cmd /C wmic useraccount where "name='user'" set PasswordExpires=FALSE</CommandLine>                    <Order>1</Order>                </SynchronousCommand>            </FirstLogonCommands>            <OOBE>                <HideEULAPage>true</HideEULAPage>                <HideLocalAccountScreen>true</HideLocalAccountScreen>                <HideOnlineAccountScreens>true</HideOnlineAccountScreens>                <HideWirelessSetupInOOBE>true</HideWirelessSetupInOOBE>                <NetworkLocation>Other</NetworkLocation>                <HideOEMRegistrationScreen>true</HideOEMRegistrationScreen>                <ProtectYourPC>1</ProtectYourPC>            </OOBE>            <UserAccounts>                <LocalAccounts>                    <LocalAccount wcm:action="add">                        <Password>                            <Value>UABhAHMAcwB3AG8AcgBkAA==</Value>                            <PlainText>false</PlainText>                        </Password>                        <Name>user</Name>                        <DisplayName>user</DisplayName>                        <Group>Administrators</Group>                    </LocalAccount>                </LocalAccounts>            </UserAccounts>            <RegisteredOwner>xxx</RegisteredOwner>            <RegisteredOrganization>xxx</RegisteredOrganization>            <TimeZone>Central European Standard Time</TimeZone>        </component>        <component name="Microsoft-Windows-International-Core" processorArchitecture="x86" 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>pl-PL</InputLocale>            <SystemLocale>pl-PL</SystemLocale>            <UILanguage>pl-PL</UILanguage>            <UILanguageFallback>pl-PL</UILanguageFallback>            <UserLocale>pl-PL</UserLocale>        </component>    </settings></unattend>

Please help, the target is to skip it at install time :)

t0mNight you simply need to insert a key been in the exact same situation if you want to activate using the BIOS key input the key in the xml as XXXXX-XXXX this way you are informing it to use the BIOS key i do this on a daily basis and it works.

0

Share this post


Link to post
Share on other sites

Ok, i gave up and registered here for some help. I will post here since it's the same problem.

I have made an Windows 8.1 AIO x86/x64 with:

Windows 8.1 Core N

Windows 8.1 Pro N VL

Windows 8.1 Enterprise N

 

 

If i'm making iso at the installation is asking me on the first time to put the key of the product (don't even know which version). How can i skip it and move forward to the box where i'm having all the versions i want to install ?!

 

This is my auto so far, incomplete without other versions and my x64 versions because i don't know how to put it right:

http://pastebin.com/9sit9tKw

 

 

Thanks in advance.

0

Share this post


Link to post
Share on other sites

In your posted XML, if using this makes the product key prompt appear, then I suggest you remove the InstallFrom object. In my XMLs, I only specify the install key and not the Index name in the install.wim.

 

If you want it to show you all the indexes in the install.wim, do not specify either an InstallFrom or a ProductKey. Then I believe you use the pid.txt to put the installs keys into so that after you manually choose from the image list, it will not ask for a key.

http://technet.microsoft.com/en-us/library/hh824952.aspx

0

Share this post


Link to post
Share on other sites

Thanks for the response. How should i make after a PID to work with all the editions from my install.wim ? In the PID i can only put one key only, or not ?

Thanks

0

Share this post


Link to post
Share on other sites

I am not certain if you can put more than one product key in the pid.txt. Do you still have product.ini in \sources?

I would have to wait until Monday to do any testing myself.

0

Share this post


Link to post
Share on other sites

Hello. No, i don't have it anymore. I just put ei.cfg with the following:

[Channel]Retail[VL]1

and it shows me the box to choose but i dont know if then it says me to enter the key for that product..

0

Share this post


Link to post
Share on other sites

 

t0mNight you simply need to insert a key been in the exact same situation if you want to activate using the BIOS key input the key in the xml as XXXXX-XXXX this way you are informing it to use the BIOS key i do this on a daily basis and it works.

 

You do not need to input all X's.  The problem you guys are having is that you are trying to "skip" it.  That's not possible.  You need to let the product key process run.  When it runs it will pick up the key in the BIOS.  Specifing for it to never run or to show errors will cause it to error out.  Just leave the Key field blank and tell it to ALWAYS show.  If there's a BIOS key to be found you will never see the CD Key window, it will in fact proceed unattended.

 

<UserData>

    <ProductKey>

        <Key></Key>

        <WillShowUI>Always</WillShowUI>

    </ProductKey>

    <AcceptEula>true</AcceptEula>

</UserData>

Removing ProductKey altogether as the OP has done will also throw out an error.

0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.