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"
LVL 14
cuziyqAsked:
Who is Participating?
 
matrixnzConnect With a Mentor Commented:
Hi cuziyg

Added a few comments to your Winnt.sif file not sure if this will resolve you're issue or not but fingers crossed.

Cheers

[Data]
    AutoPartition="1"
    MsDosInitiated="0"
    UnattendedInstall="Yes"
    InstallDir=\WINDOWS ::Not sure what this is referring to?

[Unattended]
    UnattendMode=ProvideDefault ::Any reason why you can't use "FullUnattended" instead?
    OEMSkipEula="Yes"
    OEMPreinstall="Yes"
    TargetPath="\WINDOWS"
    Repartition="No"
    FileSystem=* :: Options are ConvertNTFS or LeaveAlone if you're referring to Default then you could just leave this out altogeather
    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" ::This no longer appears in the latest Sysprep Tool, not sure if it's still valid
    ProgramFilesPath="D:\Program Files" ::Not sure what this is referring to?
    CommonFilesDir="D:\Program Files\Common" ::Not sure what this is referring to?
    CommonProgramFilesDir="D:\Program Files\Common" ::This no longer appears in the latest Sysprep Tool, not sure if it's still valid

[GuiUnattended]
    AdminPassword=xxxxx
    EncryptedAdminPassword=Yes ::If you wish to use Autologon then the Administrator Password cannot be encrypted.
    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] :: Not sure about this Section, I would of thought this would of gone under [GuiRunOnce] section instead.
    UserExecute="%SYSTEMDRIVE%\DRIVERS\UTILITY\SYSCONF.CMD"

For your networking you could make this entirely silent as well using something like the following:

[Networking]
    InstallDefaultComponents="No"

[NetAdapters]
    Adapter1="params.Adapter1"

[params.Adapter1]
    INFID="*"

[NetClients]
    MS_MSClient="params.MS_MSClient"

[NetServices]
    MS_SERVER="params.MS_SERVER"

[NetProtocols]
    MS_TCPIP="params.MS_TCPIP"

[params.MS_TCPIP]
    DNS="Yes"
    UseDomainNameDevolution="No"
    EnableLMHosts="Yes"
    AdapterSections="params.MS_TCPIP.Adapter1"

[params.MS_TCPIP.Adapter1]
    SpecificTo="Adapter1"
    DHCP="Yes"
    WINS="No"
    NetBIOSOptions="0"
0
 
cuziyqAuthor Commented:
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.
0
 
matrixnzCommented:
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
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.