Link to home
Start Free TrialLog in
Avatar of cuziyq
cuziyq

asked on

Unattended XP Installation Rebooting During Network Detection

I am trying to make myself a Windows XP Media Center Edition unattended installation disc which will set up my machine just the way I like it every time I reload.  I am using $OEM$ distribution folders for drivers and a heavily customized WINNT.SIF setup script.  I've done this many times in the past with various machines and versions of Windows.  But this time, I am running into a problem I've never had before . . .

The system completes text mode setup just fine.  When it moves on to the graphical portion, it does the hardware detection successfully, then prompts for user name and password, organization, time zone, etc.  Then after that, when it moves on to detecting network hardware, the system reboots just as the detection gets to 100%.  It never shows the dialogs for network settings, domain/workgroup, etc.  When it reboots, it begins the graphical portion of setup all over again in an endless loop.

Right now I am testing it as an ISO image in a virtual machine.  The behavior occurs in both Virtual PC and VMWare.  It seems to work fine if I get rid of the WINNT.SIF file, so the image seems solid.  But I have verified every option in the WINNT.SIF file and nothing is wrong with it as far as I can see.  So maybe something else is going on.  Here is the WINNT.SIF file (with my product key and name/password removed, of course):

[Data]
    AutoPartition=1
    MsDosInitiated="0"
    UnattendedInstall="Yes"
    InstallDir=\WINDOWS

[Unattended]
    UnattendMode=ProvideDefault
    OEMSkipEula=Yes
    OEMPreinstall=Yes
    TargetPath=\WINDOWS
    Repartition=No
    FileSystem=*
    UnattendSwitch="Yes"
    WaitForReboot="No"
    OEMPnPDriversPath="DRIVERS\ATIDISP;DRIVERS\ATIWDM;DRIVERS\AUDIODRV;DRIVERS\ETHERNET;DRIVERS\ITERAID;DRIVERS\MEMCTL;DRIVERS\SATARAID;DRIVERS\SLISATA;DRIVERS\SMBUS"
    DriverSigningPolicy=Ignore
    AutoActivate=No
    ProgramFilesDir="D:\Program Files"
    ProgramFilesPath="D:\Program Files"
    CommonFilesDir="D:\Program Files\Common"
    CommonProgramFilesDir="D:\Program Files\Common"

[GuiUnattended]
    AdminPassword=xxxxx
    EncryptedAdminPassword=Yes
    AutoLogon=Yes
    AutoLogonCount=1
    OEMSkipRegional=0
    OEMSkipWelcome=1
    ProfilesDir="D:\User Profiles"

[UserData]
    ProductKey=XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
    FullName="xxxxxxxxxxxxxxxxxxx"
    OrgName="xxxxxxxxxxxxxxxxxxx"
    ComputerName=XXXXX

[Display]
    BitsPerPel=32
    Xresolution=1280
    YResolution=960
    Vrefresh=100

[Identification]
    JoinWorkgroup=XXXXXXXXX

[Components]
    msnexplr=off

[SetupParams]
    UserExecute="%SYSTEMDRIVE%\DRIVERS\UTILITY\SYSCONF.CMD"
ASKER CERTIFIED SOLUTION
Avatar of matrixnz
matrixnz

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of cuziyq
cuziyq

ASKER

I figured out what it was, Matrix.  The machine name I specified in the WINNT.SIF file was already in use on the network.  As soon as I changed it, it works just fine.

I am gonna give you the points anyway, because I didn't know about the encrypted Admin password thing not being able to work with the AutoLogon feature.  You were right on the spot with that one.  Seems odd that M$'s tool would allow you to select them both.  Oh well.

Also, I wanted to respond to some of the comments you made about my file, just in case you are interested.

InstallDir in the [Data] section is something M$ puts there when you run Winnt32.exe from a PE disc.  Don't know what it's for, but it doesn't seem to break anything.  Since M$ uses it, I decided to use it too.

As for the UnattendMode, I wanted it to be at ProvideDefault so I still get prompted for all the setup values in case I want to change them.

FileSystem=* in the [Unattended] section means that the text mode portion of setup will prompt for the partition and allow you to select the NTFS (Quick) formatting option when doing the install.  Give it a try!  :-)

For the locations of Program Files and Common files, the *new* way of specifying them is with ProgramFilesDir and CommonProgramFilesDir.  However, I believe it was with Windows 2000 pre-SP1, it used to be ProgramFilesPath and CommonFilesDir instead.  Just like the InstallDir thing above, it doesn't seem to break anything.  I just got used to using a long time ago and never quit.  Don't know why I am so anal like that :-)

And finally, the [SetupParams] section . . . I did this because my custom batch script changes the wallpaper, theme, and some other settings in the Default User profile to reflect my company's logos and such.  Also, it chages a couple reg keys that Windows "protects" when booting normally.  (By protection, I mean regedit will allow you to modify them, but Windows changes them back automatically without prompting).

Anyhoo. hope that was informative.  Thanx for the reply.
Hi cuziyq

Thanks for the points and your reply, found it very informative, couple of things I didn't realise:

The FileSystem=* will have a look at that it would be quite handy for private installs, although for corporate I use a network installation using WinPE to connect to a network share then paritition using DiskPart then quick format etc.. before running winnt32.exe.

The [SetupParams] I'll also have to look at, I've never seen this section before, I've always used cmdlines.txt for both the unattend.txt and sysprep.  It'll be interesting to compare the two, to see the pros and cons of both, I'm assuming M$ had a reason for placing both of these methods.

Again thanks for your reply.

Cheers