/build/static/layout/Breadcrumb_cap_w.png
01/29/2018 799 views
I'm reading a deployment tip about how in v1709, OS media now presents a version installation option during deployment. I'm currently using a Scripted Installation and using the wizard to develop my unattend file, and then going back and doing some of my own tweaking.

The ITNinja article suggests:

You need to edit your Setup Configuration at the ImageInstall OSImage section and you add an InstallFrom MetaData key value pair. Here is an example:

      <ImageInstall>
        <OSImage>
          <InstallFrom>
            <MetaData wcm:action="add">
              <Key>/IMAGE/INDEX</Key>
              <Value>1</Value>
            </MetaData>
          </InstallFrom>
        ...
        </OSImage>
      </ImageInstall>

The value shown above, 1, tells Windows Setup to select the "Windows 10 Education" image for installation. You would obviously replace this value with the index number of the edition you're interested in installing. The ellipsis there simply depicts that you may have other attributes in this section but the focus for this tip is to select the install image/edition of Windows.

The K2 sysprep wizard doesn't appear to have a section related to this, so I am curious as to how, or more precisely, where I add this section into my unattend file? Here is my current unattend as configured by the K2 sysprep wizard:

<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <settings pass="windowsPE">
    <component name="Microsoft-Windows-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
      <UseConfigurationSet>true</UseConfigurationSet>
      <UserData>
        <AcceptEula>true</AcceptEula>
        <FullName>xxxxxxxxxxxxxxxx</FullName>
        <Organization>xxxxxxxxxxxxxxxx</Organization>
      </UserData>
      <ImageInstall>
        <OSImage>
          <InstallToAvailablePartition>true</InstallToAvailablePartition>
        </OSImage>
      </ImageInstall>
    </component>
    <component name="Microsoft-Windows-International-Core-WinPE" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
      <UILanguage>en-us</UILanguage>
      <SetupUILanguage>
        <UILanguage>en-us</UILanguage>
      </SetupUILanguage>
      <InputLocale>en-us</InputLocale>
      <SystemLocale>en-us</SystemLocale>
      <UserLocale>en-us</UserLocale>
    </component>
  </settings>
  <settings pass="specialize">
    <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
      <RegisteredOwner>xxxxxxxxxxxxxxxx</RegisteredOwner>
      <RegisteredOrganization>xxxxxxxxxxxxxxxx</RegisteredOrganization>
      <TimeZone>Eastern Standard Time</TimeZone>
      <AutoLogon>
        <Enabled>true</Enabled>
        <Username>xxxxxxxxxxxxxxxx</Username>
        <Password>
          <PlainText>true</PlainText>
          <Value>xxxxxxxxxxxxxxx</Value>
        </Password>
        <LogonCount>4</LogonCount>
      </AutoLogon>
      <ComputerName>*</ComputerName>
    </component>
    <component name="Microsoft-Windows-UnattendedJoin" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
      <Identification>
        <JoinWorkgroup>WORKGROUP</JoinWorkgroup>
      </Identification>
    </component>
    <component name="Microsoft-Windows-Deployment" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
      <RunSynchronous>
        <RunSynchronousCommand wcm:action="add">
          <Path>reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\CurrentVersion\NetworkList\Signatures\FirstNetwork" /v Category /t REG_DWORD /d 00000000 /f</Path>
          <Description>Setting Network Location</Description>
          <Order>1</Order>
          <WillReboot>OnRequest</WillReboot>
        </RunSynchronousCommand>
        <RunSynchronousCommand wcm:action="add">
          <Path>reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v EnableFirstLogonAnimation /d 0 /t REG_DWORD /f</Path>
          <Description>Hide First Logon Animation</Description>
          <Order>2</Order>
        </RunSynchronousCommand>
        <RunSynchronousCommand wcm:action="add">
          <Path>reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v EnableFirstLogonAnimation /d 0 /t REG_DWORD /f</Path>
          <Description>Hide First Logon Animation</Description>
          <Order>3</Order>
        </RunSynchronousCommand>
      </RunSynchronous>
    </component>
  </settings>
  <settings pass="oobeSystem">
    <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
      <OOBE>
        <HideEULAPage>true</HideEULAPage>
        <NetworkLocation>Work</NetworkLocation>
        <SkipMachineOOBE>true</SkipMachineOOBE>
        <SkipUserOOBE>true</SkipUserOOBE>
        <ProtectYourPC>1</ProtectYourPC>
      </OOBE>
      <Display>
        <HorizontalResolution>1920</HorizontalResolution>
        <VerticalResolution>1080</VerticalResolution>
      </Display>
      <UserAccounts>
        <LocalAccounts>
          <LocalAccount wcm:action="add">
            <Name>xxxxxxxxxxxxxxxx</Name>
            <Group>Administrators</Group>
            <Password>
              <Value>xxxxxxxxxxxxxxxx</Value>
              <PlainText>true</PlainText>
            </Password>
          </LocalAccount>
        </LocalAccounts>
      </UserAccounts>
    </component>
    <component name="Microsoft-Windows-International-Core" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
      <InputLocale>en-us</InputLocale>
      <SystemLocale>en-us</SystemLocale>
      <UILanguage>en-us</UILanguage>
      <UserLocale>en-us</UserLocale>
    </component>
  </settings>
</unattend>

1 Comment   [ + ] Show comment

Comments

  • I think I found it and am testing now.

    ~~~~~

    Edited sysprep to read and so far so good.

    <?xml version="1.0" encoding="utf-8"?>
    <unattend xmlns="urn:schemas-microsoft-com:unattend" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <settings pass="windowsPE">
    <component name="Microsoft-Windows-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
    <UseConfigurationSet>true</UseConfigurationSet>
    <UserData>
    <AcceptEula>true</AcceptEula>
    <FullName>xxxxxxxxxxxxx</FullName>
    <Organization>xxxxxxxxxxxxx</Organization>
    </UserData>
    <ImageInstall>
    <OSImage>
    <InstallToAvailablePartition>true</InstallToAvailablePartition>
    <InstallFrom>
    <MetaData wcm:action="add">
    <Key>/IMAGE/INDEX</Key>
    <Value>3</Value>
    </MetaData>
    </InstallFrom>
    </OSImage>
    </ImageInstall>
    • This worked for me! I was about to ask the same question. Consider adding this as an answer as I almost didn't see the comment?
      • This content is currently hidden from public view.
        Reason: Removed by member request For more information, visit our FAQ's.
      • Good idea and will do.

All Answers

0
Only the VL ISO from Microsoft has multi-versions.  Once you've deployed your scripted install, you have selected the version to be used, and so that is the only version on the machine that you are using to create your golden master, therefore you do not have to specify it in your sysprep unatted file.
Answered 01/29/2018 by: cserrins
Red Belt