Video Screencast Help
Symantec to Separate Into Two Focused, Industry-Leading Technology Companies. Learn more.

Creating a Gost of Windows 7 image Gost Solution Suite GSS2.5 (11.5.1.2266)

Created: 15 Jan 2013 | 4 comments

 

I have been trying in vain to create an image file that I can use on a range of Dell equipment (Latitude laptops, Precision and Optiplex Workstations), but to no avail.

When I used XP it was easy. Build the OS how you want it, create the sysprep.ini and in there provide the locale info and a path to all the drivers.

With Windows 7, I tried the same, but editing the unattend.xml. This has caused three issues for me:

1. The drivers are ignored. It always installs the Standard VGA Adpater driver, not the specific ones I provide.

2. The network type is ignored. It always asks me to select Work or Public etc.

3. The locale settings cannot be changed easily. I used to pull up the image, then use Ghost Explorer to delete the pubkey.crt to allow it work on another Ghost Server, then edit the locale settings in the sysprep.ini. Last time I tried that with the unattend.xml, I changed the local in the file in sysprep folder and C:\Windows\Panther and it said the file could not be parsed and the system would no longer boot.

I have been hacking at this for 6 months on and off and getting a bit fed up. There is no real help on this ANYWHERE, and I would appreciate some help on what I am doing wrong, or pointers to some info. Also, which unattend.xml is actually used? There is one in C:\sysprep and one in C:\Windows\Panther, but I don't get the difference.

Below are screenshots of my settings and the unattend.xml that was built

.

 

<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">

     <settings pass="offlineServicing">
      <component name="Microsoft-Windows-PnpCustomizationsNonWinPE" 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">
         <DriverPaths>
            <PathAndCredentials wcm:keyValue="1" wcm:action="add">
               <Credentials>
                  <Password>*******</Password>
                  <Username>administrator</Username>
               </Credentials>
               <Path>C:\Drivers</Path>
            </PathAndCredentials>
         </DriverPaths>
      </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>
                <NetworkLocation>Work</NetworkLocation>
                <ProtectYourPC>3</ProtectYourPC>
                <SkipMachineOOBE>true</SkipMachineOOBE>
                <SkipUserOOBE>true</SkipUserOOBE>
         </OOBE>
            <TaskbarLinks>
                <Link0>%windir%\system32\services.msc</Link0>
             </TaskbarLinks>
      <AutoLogon>
         <Password>
            <Value>genesys</Value>
            <PlainText>true</PlainText>
         </Password>
         <Username>Administrator</Username>
         <Enabled>true</Enabled>
      </AutoLogon>
     <UserAccounts>
         <AdministratorPassword>
            <Value>*****</Value>
            <PlainText>true</PlainText>
         </AdministratorPassword>
      </UserAccounts>
<!--
         <Display>
            <ColorDepth>32</ColorDepth>
            <DPI>120</DPI>
            <HorizontalResolution>1024</HorizontalResolution>
            <RefreshRate>60</RefreshRate>
            <VerticalResolution>768</VerticalResolution>
         </Display>
-->  
          <RegisteredOwner>*</RegisteredOwner>
            <RegisteredOrganization>*</RegisteredOrganization>
            <TimeZone>GMT Standard Time</TimeZone>

      </component>
        <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>en-GB</InputLocale>
            <SystemLocale>en-GB</SystemLocale>
            <UILanguage>en-GB</UILanguage>
            <UserLocale>en-GB</UserLocale>
        </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">
           <CopyProfile>true</CopyProfile>
           <ComputerName>*</ComputerName>
            
        </component>
        <component name="Microsoft-Windows-UnattendedJoin" 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">
            <Identification>
                <JoinWorkgroup>WORKGROUP</JoinWorkgroup>
            </Identification>
        </component>
        <component name="Microsoft-Windows-IE-InternetExplorer" 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">
            <DisableFirstRunWizard>true</DisableFirstRunWizard>
            <Home_Page>http://www.genesyslab.com/GU/evals/</Home_Page>
        </component>
    </settings>
    
    <settings pass="generalize">
        <component name="Microsoft-Windows-PnpSysprep" 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">
            <PersistAllDeviceInstalls>false</PersistAllDeviceInstalls>
        </component>
        <component name="Microsoft-Windows-Security-Licensing-SLC" 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">
            <SkipRearm>1</SkipRearm>
        </component>
    </settings>

  <cpi:offlineImage cpi:source="wim:c:/vista/x64/image.wim#Windows Vista ULTIMATE" xmlns:cpi="urn:schemas-microsoft-com:cpi"/>
 </unattend>

Comments 4 CommentsJump to latest comment

Terry BU's picture

one thing to try is adding the C:\drivers path into the registry key for HKLM\software\microsoft\windows\currentversion\devicepath at the end.  This way if your XML file doesnt find it, windows will look there for the drivers (Win7 recursively checks directories, XP does NOT).  This is how i make it find all drivers i have locally on the machine in a repository-esque setup.

 

if your device wont parse the XML file and wont reboot, and you get a "general error" you may have hit your sysprep limit.

Does your machine find network drivers, or do you have to point for those too?  i ask because if you have to point after the fact, it will ask you about a network type.

Also, you can change the locale settings inside the sysprep file.  if you mean for language, my XML has this:

 

 <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>
            <UserLocale>en-US</UserLocale>
        </component>
also
<TimeZone>Eastern Standard Time</TimeZone>
and
<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>en-US</InputLocale>
            <SystemLocale>en-US</SystemLocale>
            <UILanguage>en-US</UILanguage>
            <UserLocale>en-US</UserLocale>
        </component>
under the oobeSystem
burndtjammer's picture

I am interested in this topic as well.  DeployAnywhere really only loads up your network and mass storage drivers.

EdT's picture

Downloading the appropriate version of the Microsoft WAIK will provide you with detailed documentation on the way that the operating system build process needs to be structured. Knowledge of this is a great help to any imaging process.

If your issue has been solved, please use the "Mark as Solution" link on the most relevant thread.

Terry BU's picture

EdT is right, the WAIK (Win7) has a TON of documentation, including help files that tell you what every possible key does, and what all of its settings do

 

also, as for which unattend file is used, it will use the unattend.xml from where you call sysprep, UNLESS you use the /unattend:<file_name> flag when calling sysprep