Jump to content

Unattended sysprep Test progress.


Recommended Posts

Here I will discuss the procedure till now! And what errors I get what will work and What will not work.

Make a C:\sysprep directory with the newest version of sysprep http://www.microsoft.com/downloads/details...&displaylang=en

make the following directories:

C:\sysprep\temp

C:\sysprep\driverpacks [Here you download all of the driverpacks]

C:\sysprep\INF Here you will put the sysprep.inf file created with the setupmgr.exe

copy the following files to C:\sysprep

go_OemPnPDriversPath.cmd

OemPnPDriversPath.cmd

go_hwid.cmd

hwid.cmd --> MANY THANKS TO IcemanND for this ONE!!

unpack style1.cmd

unpack style2.cm

7za.exe --> Too big to attach have to get it yourself!

sysprep.cmd

be sure to add the folowing entries to your sysprep.inf under the following sections:

[unattended]

OemPnPDriversPath =

DriverSigningPolicy=Ignore

KeepPageFile=0

[sysprep]

BuildMassStorageSection=yes

[sysprepMassStorage]

for additional info see: http://www.microsoft.com/technet/prodtechn...93230f6307.mspx

Now execute the script in this way:

1. unpack style2.cmd

2. go_OemPnPDriversPath.cmd

3. go_hwid.cmd

4. open de generated hwid.txt and copy paste all the entries under the [sysprepMassStorage] section in C:\sysprep\sysprep.inf

5. look at the OemPnPDriversPath entries and make sure there are no spaces between OemPnPDriversPath and = etc

6. Go to the properties of My Computer. To TAB Hardware and set Digital Driver Signing to Ignore!

7. execute sysprep.cmd

8. There may be incomplete drivers in de Massstorage pack which generate Errors cancel them and the setup will go on! There may also be win2000 drivers which we use for the xp pack. These aren't digitally signed but they popup because they aren't official XP drivers. Just press the go on button.

TIP: http://support.microsoft.com/kb/q307543/

go_hwid.cmd

hwid.cmd

go_OemPnPDriversPath.cmd

OemPnPDriversPath.cmd

unpack_style1.cmd

unpack_style2.cmd

sysprep.cmd

Link to comment
Share on other sites


Here I will discuss certain issues! And post my Log File:

One of the wierdest things was the difference between de unpack style1.cmd and the unpack style2.cmd.

Style 1 was the normal unpack method like this:

7za.exe x -y  C:\sysprep\DriverPacks\DriverPack_Chipset_*.7z -oC:\
7za x -y c:\sysprep\driverpacks\DriverPack_Graphics_A_*.7z -oC:\
7za x -y c:\sysprep\driverpacks\DriverPack_Graphics_B_*.7z -oC:\
7za x -y c:\sysprep\driverpacks\DriverPack_LAN_*.7z -oC:\
7za x -y c:\sysprep\driverpacks\DriverPack_MassStorage_*.7z -oC:\
7za x -y c:\sysprep\driverpacks\DriverPack_Sound_A_*.7z -oC:\
7za x -y c:\sysprep\driverpacks\DriverPack_Sound_B_*.7z -oC:\
7za x -y c:\sysprep\driverpacks\DriverPack_WLAN_*.7z -oC:\

and the Style 2 made a different sub for every Driverpack

@ECHO OFF
MD C:\DP
7za.exe x -y  C:\sysprep\DriverPacks\DriverPack_Chipset_*.7z -oC:\
7za x -y c:\sysprep\driverpacks\DriverPack_Graphics_A_*.7z -oc:\sysprep\driverpacks\temp
MOVE /Y "c:\sysprep\driverpacks\temp\DP\G" "C:\DP"
C:
CD "C:\DP"
RENAME G G1

C:
CD "c:\sysprep"
7za x -y c:\sysprep\driverpacks\DriverPack_Graphics_B_*.7z -oc:\sysprep\driverpacks\temp
MOVE /Y "c:\sysprep\driverpacks\temp\DP\G" "C:\DP"
C:
CD "C:\DP"
RENAME G G2

C:
CD "c:\sysprep"
7za x -y c:\sysprep\driverpacks\DriverPack_LAN_*.7z -oc:\

7za x -y c:\sysprep\driverpacks\DriverPack_MassStorage_*.7z -oc:\

7za x -y c:\sysprep\driverpacks\DriverPack_Sound_A_*.7z -oc:\sysprep\driverpacks\temp
MOVE /Y "c:\sysprep\driverpacks\temp\DP\S" "C:\DP"
C:
CD "C:\DP"
RENAME S S1

C:
CD "c:\sysprep"
7za x -y c:\sysprep\driverpacks\DriverPack_Sound_B_*.7z -oc:\sysprep\driverpacks\temp
MOVE /Y "c:\sysprep\driverpacks\temp\DP\S" "C:\DP"
C:
CD "C:\DP"
RENAME S S2

C:
CD "c:\sysprep"
7za x -y c:\sysprep\driverpacks\DriverPack_WLAN_*.7z -oc:\
echo W done press key to continue
pause

WHen style 2 was used in the procedure everything went OK!

When style 1 was used At the end of my sysprep process i got an unable to write to registry error and that was it.... Why I REALLY DONT KNOW!

Then we have to encount the fact that we can only add a max of 4096 characters behind the OemPnPDriversPath in the sysprep.inf file concerning to http://support.microsoft.com/default.aspx?...5&Product=winxp

When we count we get:

STYLE1: COUNT: 4196 characters

"DP\C\A;DP\C\AU;DP\C\I;DP\C\N;DP\C\V; etc etc

STYLE2: COUNT: 4277 characters

"DP\C\A;DP\C\AU;DP\C\I;DP\C\N;DP\C\V;DP\G1\A\1;DP\G1\ etc etc

The strange thing is that they both exceed the 4096 limit which means that only 4096 will be written to the registry and the rest will be ignored.

There is a way to get past this. Which is given in this 2000 Q article. With 2000 we had an even lesser limit

http://support.microsoft.com/kb/285902/

so maybe a programmer can write such a thing Like a modified OemPnPDriversPath.cmd which doesn't add the lines in sysprep.inf but adds them directly in the given registry key mention in the Q article:

1. Start Registry Editor.

2. Navigate to the following registry key:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion

3. Double-click the DevicePath value.

4. Append the New Path Entries to the string in the Edit box, where New Path Entries are the path entries to your OEM drivers.

Note When you type the path entries, use the %SYSTEMDRIVE% and %SYSTEMROOT% variables instead of the relative path entries that you use in the Sysprep.inf file. Separate multiple entries with a semi-colon (;).

5. Click OK, and then close Registry Editor.

LOG:

v12042005

- had problems with some driverpacks (DriverPack_MassStorage_V504.7z) under the massstorage

section. When running the sysprep reseal some drivers missed files resulting in a not

resealable pc.
- These are the errors:
Missing file cerccin.dll of DELL CERC SATA 1.5/6ch in c:\sysprep\dp\m\d
Setup can't find file qlsdm.dll of Qlogic Software Diskette in c:\sysprep\dp\m\q\3\..
- te reseal process would finish. After testing this was because of the dir structure in  C:\sysprep\DP which was very wierd. There for I created a second script unpack style2.cmd
- changed the unpack script etc to C:\DP instead of C:\Sysprep\DP because of the character limit. Now I have to edit the copy_profile.cmd to delete the C:\DP folder after the minisetup!

that seperated every driverpack in a different subdir and the problem was solved.

v10042005

- added hwid.cmd script with Thanks to Iceman on MSFN.org.
- made Unpack PACKS.cmd driverpack Extract script to C:\sysprep\DP
- modified the go_OemPnPDriversPath.cmd script.
- modified C:\sysprep\INF\sysprep.inf file


V07042005

- initial release.
- Windows XP PRO SP2 NL with Windows Update till this date.
- Office 2003 NL SP1 Plus Office Updates till this date / Plus Config.
- McAfee VirusScan Enterprise v8 plus Patch 10 updates till this date / plus config.
- Outlook Attachment Options
- Microsoft Antispyware Beta 1.0 with updates till this date / Plus full sweep.
- BTS Driverpacks till this date.
- defeault User profile / auto create default user after unattende sysprep.
- Windows XP standard settings for: looks / temp dirs etc etc.
- Made Base_imagev07042005 for updating later.
- made prep_imagev07042005 for distribution and testing.
- added extra Highpoint driver G:\SYSPREP\D\4\DP\M\H\5 "HPT3xx ATA RAID controller for  

Windows 2000/XP" which wasn't in the BTS driver pack

Link to comment
Share on other sites

  • 2 weeks later...

Hi there.

First of all thanks for taking the time to investigate this topic.

I've always waited for someone to develop a method to implement BTS Driver Packs in a Sysprep Image.

I'd like to give you some feedback and provide you with a description of all the errors that I came across.

1. When I use unpack_style2.cmd it unpacks all the Driver Packs to C:\D and creates an empty Folder C:\DP.

The go_OemPnPDriversPath.cmd points to the empty C:\DP folder and won't do anything unless you edit it to "OemPnPDriversPath.cmd C:\D C:\SYSPREP\inf\sysprep.inf" without the quotes.

2. The go_hwid.cmd already points to C:\D\M, but in the HWID.txt it generates I found those lines with spaces in them: PCI\VEN_1283&DEV_8212&SUBSYS_00011283 =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8212&SUBSYS_00000000 =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8211&SUBSYS_82111283 =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8212&SUBSYS_2A1D103C =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8211&SUBSYS_2A1D103C =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8212&SUBSYS_813A1043 =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8212&SUBSYS_81381043 =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8211&SUBSYS_81381043 =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8212&SUBSYS_2C0717F2 =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8212&SUBSYS_1458B000 =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8212&SUBSYS_1940B000 =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8212&SUBSYS_0A46174B =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8211&SUBSYS_0A46174B =C:\D\M\IT\iteraid.inf

I removed those spaces before I pasted the content of HWID.txt to c:\sysprep\sysprep.inf.

3. I downloaded the missing Driver Files to fix the missing QLSDM.dll in C:\d\m\q\3 and cerccin.dll in C:\d\m\d.

Now the reseal Process runs fine, although it literally takes ages and then suddenly it exits with the very same Registry Error that you reported.

BTW I only get this error when I use the GUI Sysprep and not the Sysprep.cmd you provided. I guess that's caused by the -quiet option int the .cmd. I don't know what causes this error, but I guess it is a faulty driver somewhere in the Driver Pack. Maybe Bashrat can comment on this, he would know best which errors occur with the Mass Storage Pack.

I tried installing everything but the Mass Storage Driver Pack and that worked fine for me. I also tried using the new MassStorage Driver Pack 5.05, but that gives me the very same errors as the old one.

After testing this was because of the dir structure in  C:\sysprep\DP which was very wierd. There for I created a second script unpack style2.cmd

- changed the unpack script etc to C:\DP instead of C:\Sysprep\DP because of the character limit. Now I have to edit the copy_profile.cmd to delete the C:\DP folder after the minisetup!

that seperated every driverpack in a different subdir and the problem was solved.

Using the unpack style2.cmd didn't fix that error for me, so could you please describe what exactly you changed to fix it?

I'm gonna keep on trying to get this thing to work for me and post all the stuff I come across.

Link to comment
Share on other sites

something i'm going to try when i get some time is sysprepping an image which has had "keep the drivers" applied... might this work for most of the devices apart from massstorage

g.

Link to comment
Share on other sites

  • 2 years later...
Hi there.

First of all thanks for taking the time to investigate this topic.

I've always waited for someone to develop a method to implement BTS Driver Packs in a Sysprep Image.

I'd like to give you some feedback and provide you with a description of all the errors that I came across.

1. When I use unpack_style2.cmd it unpacks all the Driver Packs to C:\D and creates an empty Folder C:\DP.

The go_OemPnPDriversPath.cmd points to the empty C:\DP folder and won't do anything unless you edit it to "OemPnPDriversPath.cmd C:\D C:\SYSPREP\inf\sysprep.inf" without the quotes.

2. The go_hwid.cmd already points to C:\D\M, but in the HWID.txt it generates I found those lines with spaces in them: PCI\VEN_1283&DEV_8212&SUBSYS_00011283 =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8212&SUBSYS_00000000 =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8211&SUBSYS_82111283 =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8212&SUBSYS_2A1D103C =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8211&SUBSYS_2A1D103C =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8212&SUBSYS_813A1043 =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8212&SUBSYS_81381043 =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8211&SUBSYS_81381043 =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8212&SUBSYS_2C0717F2 =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8212&SUBSYS_1458B000 =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8212&SUBSYS_1940B000 =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8212&SUBSYS_0A46174B =C:\D\M\IT\iteraid.inf

PCI\VEN_1283&DEV_8211&SUBSYS_0A46174B =C:\D\M\IT\iteraid.inf

I removed those spaces before I pasted the content of HWID.txt to c:\sysprep\sysprep.inf.

I have created a modifed/updated version of HWIDS.CMD that solves this extra tab (it's not really a space) problem. It is available online at:

http://www.msfn.org/board/...-t115205.html

and http://forum.driverpacks.net/viewtopic.php?id=1637&p=2

Edited by Yzöwl
Link to MSFN post replaced due to post being moved!
Link to comment
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.
×
×
  • Create New...