Installing Windows XP

Installing an operating system is not an especially pleasant activity for most Windows users. Depending on your hardware, just booting up the setup CD can be a headache. Then you have to type that ridiculous 25-digit CD key and then make a bunch of choices about your network (all of which really could be made after setup, by the way). You then must sit and wait . . . and wait . . . for Windows to copy some two thousand files to your hard disk and then go through the excruciating process of “configuring” your computer. When it finally boots — assuming it even makes it this far — you then have the unenviable task of having to download and install more than a hundred megabytes worth of updates and fixes. And when all is said and done, you still will need to go through and turn off all of the annoying “features” littered throughout the interface and then fix the myriad of problems that are sure to pop up.

But the worst part is the feeling you can’t shake: that you chose to install Windows XP on your machine, and now you’ve got to live with it.


Since a significant percentage of Windows XP users will obtain the OS preinstalled on their computers, many reading this will be fortunate enough to not have had to endure the installation of an operating system. That doesn’t mean, however, that the task won’t come back to haunt you later on, such as when you need to reinstall Windows or upgrade to the next version.

Both the steps to begin the installation procedure and the procedure itself can vary, depending on what’s already installed on your system (if anything) and how you choose to approach the task.

Windows XP setup can be run from within an installed copy of Windows XP, Windows 2000, Windows NT 4, Windows Me, or Windows 98/95. You can also run setup from DOS (also known as the Windows 9x Command Prompt). Or, if you have no operating system at all, you can boot off the CD and install it fresh. The following sections cover the advantages and drawbacks of each type of install.


Anyone installing Windows XP on a hard disk that has data on it would be wise to back up the entire system before starting the install process. Make sure the backup software you use will also operate in Windows XP so you can read the media after the install is complete; otherwise, your backup will be worthless. See Chapter 6 for more information.

Installing on a New (Clean) System

The Windows XP installation CD is bootable, which means you can put it in the drive, turn on your computer, and installation will start automatically.

If you have an older (pre-SP2) installation CD, it’s possible to create a new CD with Service Pack 2 preinstalled. See the “Slipstreaming XP and SP2” sidebar for details.

While most modern systems support bootable CDs, very few are configured to actually boot off such a CD when one is inserted. If your computer doesn’t boot off the Windows setup CD, you’ll need to change your BIOS settings accordingly. Start by entering your system’s BIOS setup utility (discussed in Appendix B ), going to the boot section, and changing the “boot device priority” or “boot sequence” so that your CD drive appears before your hard disk.[4] Exit the BIOS setup when you’re finished.

If you’re unable to boot off the Windows XP CD, you’ll need to use a bootable floppy, either one made from a previous version of Windows (see “Installation from the Command Prompt,” later in this chapter) or one that comes with the full version of Windows XP. See “Creating a Bootup Floppy,” later in this chapter, for more information.

Otherwise, Setup will display a welcome screen and spend several minutes loading drivers for your hardware. This ensures that Setup will properly support your hard drive, CD drive, and mass storage controllers; when Windows XP is installed, only the drivers you specifically need are loaded. But since Setup hasn’t been prepared in this way (for obvious reasons), it must load (or attempt to load) every possible driver.

When the initialization is done, you’ll be presented with several choices. The first screen instructs you to press Enter to set up Windows XP now, or press R to repair a Windows XP installation using the Recovery Console (an advanced diagnostic and repair tool covered in Chapter 6). Unless you specifically need to use the Recovery Console, press Enter to continue (even if you’re here to repair a Windows installation).

Next, Setup will look for an existing Windows XP installation. If one is found, you’ll have the opportunity to repair it now (see “Reinstalling Windows XP,” later in this chapter for details). Just press ESC to continue.

The next screen will allow you to choose a drive and partition on which to install Windows. Here, you’ll have the option of installing onto an existing drive or making changes to your partition table to add or remove partitions. See “Working with Partitions,” in Chapter 5, for more information. Note that Setup will not allow you to choose the installation folder, but instead will simply place the files in the \Windows folder.

During the installation of some earlier versions of Windows, you could choose the name of the folder in which Windows is stored (by default, \Windows). This can be a problem if you’re upgrading a Windows 2000 or Windows NT system, which, by default, store their files in \WINNT. If this applies to you, it’s better to use the procedure outlined in “Upgrading from a Previous Version of Windows,” later in this chapter. In this case, Setup will use whatever folder name is used by the current Windows installation.

If you’re installing on a clean system (with a new, empty hard disk), you’ll want to create a new partition using all of the available space (or several partitions, as desired). If your hard disk already has data on it, you’ll be given the opportunity here to repartition your drive or simply install Windows XP on an existing partition (usually the first one, C:\).


Repartitioning your drive involves deleting one or more existing partitions so that one or more new partitions can be created. It’s important to realize that if you delete any partition that has data on it, all of the data will be erased. And without a complete backup, there will be no way to get it back.

When asked about the filesystem, you’ll want to choose the NTFS filesystem in most cases; see “Choosing the Right Filesystem” in Chapter 5 for more information.

At this point, Windows setup will begin to copy files and configure your system. The rest of the installation process should be fairly straightforward; if you run into a problem, see “Dealing with Potential Problems During Setup,” later in this chapter.

Upgrading from a Previous Version of Windows

The preferred way (at least according to Microsoft) to upgrade to Windows XP from a previous version is to install from within the existing copy of Windows. With Windows running, insert the Windows XP installation CD into your drive, and it should start automatically.[5]

When Setup starts, you’ll be given four choices:

Install Windows XP

This opens the main Windows Setup program (also accessible by launching \i386\Winnt32.exe). When it starts, your first choice will be between Upgrade (Recommended) and New Installation (Advanced). Choose the upgrade option only if you want to install Windows XP over your existing installation, replacing your current OS with Windows XP and migrating all your settings and applications in one step.

On the other hand, you may wish to choose New Installation if you want to install on another partition or on a clean hard disk (see “Installing on a New (Clean) System,” earlier in this chapter). This option is instrumental in setting up a dual-boot system (discussed later in this chapter).

Install Optional Windows Components

This is the same as opening Add or Remove Programs in Control Panel, and clicking Add/Remove Windows Components. Place a checkmark next to components you want installed, or clear the checkmark next to components you want removed.

Perform Additional Tasks

This page contains links to several, mostly self-explanatory, tasks. Click Set up Remote Desktop Connection to install the Remote Desktop Connection software (described in “Controlling Another Computer Remotely (Just Like in the Movies)” in Chapter 6) on another computer. Click Set up a home or small office network to run the Network Setup Wizard, also discussed in Chapter 7. Finally, click Transfer files and settings to run the Files and Settings Transfer Wizard, discussed in “Transfer Windows to Another Hard Disk or System,” in Chapter 5.

Check system compatibility

This runs the Microsoft Windows Upgrade Advisor, which looks for potential problems, such as incompatible software and hardware, and lists them in a report. See “Casualties of the Upgrade,” later in this chapter, for additional issues.

At this point, Windows Setup will begin to copy files and configure your system. The rest of the installation process should be fairly straightforward; if you run into a problem, see “Dealing with Potential Problems During Setup,” later in this chapter.

Installing from the Command Prompt

If you need to install Windows XP on a new system and you are unable to boot off the CD, you can optionally install from a DOS boot disk (created on a Windows 9x/Me system by going to Control Panel Add/Remove Programs, or from within Windows XP as described in Chapter 6). Just insert the floppy in your A: drive and power on your computer. If it’s a Windows 98 or Windows Me floppy, it should contain all the necessary drivers for your CD drive,[6] required to access the setup program on the Windows XP CD.

When you get to the command prompt (A:\>), change to your CD drive by typing D: or E: (including the colon), depending on the letter on which the drive is installed. Then, type \i386\winnt.exe to start the DOS-based setup utility. The setup utility will copy the necessary boot files to your hard disk, reboot your computer, and run the same installer discussed in “Installing on a New (Clean) System,” earlier in this chapter.

Reinstalling Windows XP

You may find yourself in a position where you’ll need to reinstall Windows XP, either to solve a configuration problem or to repair a damaged installation. The procedure you choose depends on the current state of your computer.

If you’re able to start Windows XP and access your CD drive, your best bet is to reinstall from within Windows. See “Upgrading from a Previous Version of Windows,” earlier in this chapter, for details.

Otherwise, if Windows XP won’t start, you should use the following procedure to repair the installation:

  1. Boot off the XP CD, as described in “Installing on a New (Clean) System,” earlier in this chapter.

  2. When Setup begins, it will display two timed choices (timed, in that they disappear in 2-3 seconds if not activated). The first allows you to load a third-party SCSI or RAID controller driver by pressing F6. Use this only if Setup is unable to access your hard drive without them.

    The second option allows you to repair your system with the Automated System Recovery (ASR) feature by pressing F2. If you have a dual-boot system or other special arrangement, I recommend avoiding ASR, as it will attempt to repair your installation based on a few pre-determined scenarios. The assumptions made by such an “automated” feature can wreak havoc if they’re wrong.


    If you’re unable to repair your system using the subsequent steps listed here, and you’re unable to start the Windows Recovery Console due to a lost administrator password, you may wish to return here and try ASR as a last resort.

  3. After Setup loads the hardware drivers, you’ll then be presented with several choices. Press R at this point to start the Recovery Console (discussed later in this chapter). If you wish to repair XP without using the Recovery Console, press Enter here instead (I know, it’s a bit counterintuitive). Or press F3 to abort Setup and reboot the computer.

  4. Next, Setup will look for an existing Windows XP installation and will hopefully find the one you’re trying to repair here. Each Windows XP installation on your system will be listed here (you’ll see only one if you don’t have a dual-boot system). If it finds the installation you wish to repair, make sure it’s highlighted and press R to begin the repair procedure, which, essentially, is an express reinstallation of the OS.

    If Setup can’t find your installation, it means that one or more key system files are corrupted or missing. If you have a backup of your system, now would be the time to pull it out and think about restoring said files (see Chapter 6).

    Otherwise, your best bet is to use the Windows Recovery Console, discussed in Chapter 6.


    If you try to repair Windows by pressing ESC here to start a new install, it may not work as expected. For example, even if you install to the same partition as the installation you’re trying to repair, Setup may place the new copy of Windows in a different folder (i.e., \Winnt vs. \Windows).

  5. The rest of the repair procedure should be relatively automated and fairly self-explanatory. For more troubleshooting information, see “Dealing with Potential Problems During Setup.” See also Chapter 6 for more general troubleshooting tips.

Dealing with Potential Problems During Setup

No single book could possibly document every possible problem and incompatibility you might encounter while trying to install Windows XP. Luckily, about 95% of the problems you’re likely to encounter fall under these six categories.

Motherboard BIOS

The most common cause of a failed installation of Windows XP is an out-of-date BIOS. Fortunately, nearly all motherboards made in the last decade have software-upgradable flash BIOSes. Contact the manufacturer of your system or motherboard for any BIOS updates they have available, but don’t bother unless a BIOS upgrade is absolutely necessary. (A failed BIOS upgrade will make your motherboard unusable.) See Appendix B for more information.

Video card

Another common stumbling block to a successful Windows XP setup is your video card (display adapter). If Setup stops with an unintelligible error message, reboots unexpectedly during setup, or just hangs at a blank screen, your video card may be at fault. Some older video cards are simply not supported by Windows XP, but Setup will rarely, if ever warn you about such an incompatibility before you begin. If replacing the video card permits Windows XP to install, then the culprit is obvious. Note that while many video cards have upgradable flash BIOSes, I’ve never seen an instance where a BIOS upgrade can solve this type of incompatibility (although, it may be worth a shot). See the discussion of video cards in Chapter 6 for more troubleshooting advice.

Hardware inconsistencies and other problems

Windows XP is a little more touchy about improper hardware configurations than previous versions of Windows. If, for example, your memory (RAM) is not all the same rated speed, is not the correct type for your motherboard, or is malfunctioning in some way, it will prevent Windows XP from installing or running. Other potential problems include insufficient processor cooling, incorrect SCSI termination, improper jumpers on your IDE devices, bad cables, and even an older power supply. Chapter 6 includes troubleshooting tips for many kinds of hardware. See also Appendix B for system BIOS settings that may prevent Windows XP from installing.

Driver roadblocks

Windows XP attempts to install drivers for all detected hardware towards the end of the setup process. If Setup crashes at the same point each time, try temporarily removing any extraneous devices (unneeded drives, cards, and external peripherals).

CD drive

Since Windows XP installs from a CD, your CD drive may be to blame if the installation fails. A drive that delivers corrupt data to the computer will certainly cause problems, as will a drive that isn’t accessible during the entire installation process. The same goes for older controllers (RAID and SCSI units, for example).

Dust in the wind

Lastly, I’ve seen Setup fail from nothing more than excessive dust on the CD. Wipe the disk against your shirt and try again.

Setting Up a Dual-Boot System

With a dual-boot (or multiboot) setup, you can install multiple operating systems side by side on the same computer and simply choose which one to use each time you boot. So, why would you want to do this?

  • If you rely on some software or hardware that will not operate in Windows XP, you can install Windows XP and the other OS on the same system simultaneously. This includes any previous version of Windows, as well as Linux, FreeBSD, Unix, BeOS, and even NeXTStep.

  • If you’re in the process of upgrading from an earlier version of Windows to Windows XP, you may wish to set up a dual-boot system. That way, you can test XP with your existing software and hardware without having to commit to the new OS until you’re certain it will meet your needs.

  • Some people install two copies of Windows XP on their system, one for normal use, and one as a testbed for new software and hardware. That way, you can try out a potentially buggy product without jeopardizing the main OS on which you must rely.

  • Software developers often have several versions of Windows on the same machine so that they can test out their products on a variety of configurations without having to purchase a bunch of separate computers.

Windows XP comes with built-in support for a dual-boot system. The dual-boot feature (called the Boot Manager) is installed automatically when you install Windows XP. If, at the end of the installation, Windows XP is the only operating system on your computer, it will boot automatically without giving you a choice. Otherwise, you’ll see a menu of installed operating systems, from which you can choose the OS you wish to use.

So, if you’re installing Windows XP on a system with another OS, such as Windows 98, and you don’t replace it with Windows XP (instead, you choose to install it into a different directory or partition), you’ll get a dual-boot system without even trying.


In most cases, the boot manager of the last operating system installed is the one that will be used for all operating systems. For this reason, the order in which you install the operating systems is important; for example, it’s typically desirable to install older operating systems before newer ones.

Some other operating systems, such as FreeBSD and Windows 2000, have boot managers of their own and can therefore be installed either before or after XP is installed with little additional fuss. However, operating systems without their own boot managers, such as Windows 9x/Me, will break the Windows XP boot manager if installed afterwards.

But what if you already have a Windows XP system and you need to add the dual-boot capability to it? Fortunately, there is a way to install other operating systems on top of an existing Windows XP installation, although it takes a little extra preparation.

The following procedure assumes that you already have a working installation of Windows XP:

  1. Each operating system must have its own partition, assuming you have only one hard disk. See “Working with Partitions” in Chapter 5 for details on resizing drives and adding partitions.

    Note that since resizing partitions can be difficult without the proper third-party tools, you can simply add another hard disk instead of repartitioning your existing drive.


    It’s actually possible for Windows XP to share a partition with a Windows 9x/Me installation but only if they’re installed into different folders. Since they’d share the Program Files folder, though, you’d be opening the door for conflicts and other problems.

  2. Create a bootable floppy, as described in Chapter 6. The key is to back up the, ntldr, and boot.ini files, which are the key to the Windows XP boot manager. See the next section for more information on the boot.ini file.

    You’d also be wise to back up your entire system at this point (see Chapter 6).

  3. Install the other operating system; naturally, the installation procedure will vary, depending on the product you’re installing. Be extremely careful not to install it into the same folder or partition as the existing copy of Windows XP.

  4. When installation of the other product is complete, try starting the system. In some cases, the other product will have a suitable boot manager, and everything will work fine. If it doesn’t, the procedure to repair the Windows XP boot manager depends on the other operating system you’ve just installed:

    Windows 2000 or Windows NT 4.0

    These earlier versions of Windows NT have boot managers similar to Windows XP’s, but they may not work with Windows XP specifically. To repair the boot manager here, just copy the files, ntldr, and boot.ini that you backed up in step 2 into the root directory of your boot drive (usually C:\), replacing the older ones that should be there.

    Windows 9x/Me

    Since these DOS-based versions of Windows (see Chapter 1) don’t have boot managers of their own, the XP boot manager will be subdued by their installation. Although the files, ntldr, and boot.ini should remain intact after installation, your hard disk’s Master Boot Record (MBR) will have to be updated to once again recognize the Windows XP boot manager.

    This is done by starting the Windows Recovery Console (described in Chapter 6). Start by issuing the fixmbr command to restore the Windows XP boot manager, and then bootcfg /rebuild to force the boot manager to recognize the newly installed operating system.

    Linux, FreeBSD, and others

    Each of these Unix flavors comes with its own boot manager that, for the most part, appears to be compatible with Windows XP. If in doubt, check the documentation for the specific operating system and version you’re installing.

  5. When you’re done, create another bootable floppy (repeat step 2), so that you have an up-to-date backup of the boot.ini file.

Editing the Boot Manager configuration file (boot.ini)

The Windows XP boot manager is responsible for loading Windows XP, and, optionally, allowing you to boot into any other operating systems you may have installed. If you’ve set up a dual-boot (or multiboot) system, as described in the previous section, the list of operating systems that is presented when you first turn on your computer is stored in the Boot Manager configuration file (boot.ini).

The boot.ini file is, by default, a hidden file, located in the root directory of your primary partition (usually C:\). If you can’t see it, you’ll have to configure Explorer to display hidden and system files by going to Control Panel Folder Options View tab, and selecting the Show hidden files and folders option and turning off the Hide protected operating system files option.


If you screw up your boot.ini file, Windows XP won’t load. Before editing the file directly, make sure to back it up as described in “Create a Boot Disk” in Chapter 6, so it can be easily restored if necessary. If worst comes to worst, start the Windows Recovery Console (discussed in Chapter 6) and issue the bootcfg /rebuild command to delete and then rebuild the boot.ini file.

The structure of boot.ini, similar to other .ini files, is explained in “Using INI Files” in Chapter 3. You can view and modify boot.ini in any plain-text editor, such as Notepad. A typical boot.ini file is shown in Example 1-1.

Example 1-1. The Boot Manager configuration file (boot.ini) is used to define the operating systems available in the boot menu

[boot loader]
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Windows XP Pro" /fastdetect
multi(0)disk(0)rdisk(0)partition(3)\WINNT="Windows 2000 Pro" /fastdetect
C:\="Microsoft Windows Me"

The two sections of the boot.ini file are as follows:

[boot loader]

This section determines the default operating system — loaded automatically if no selection is made — and the timeout, the amount of time (in seconds) the Boot Manager waits before said selection is made.

[operating systems]

This section lists each of the individual operating systems installed on the computer. The syntax is fairly simple: a “pointer” to the drive and folder containing the operating system is shown to the left of the equals sign, and the caption shown in the boot menu is shown to the right.

The aforementioned pointer can appear in one of several different ways. The first two entries shown in Example 1-1 point to Windows NT installations (XP and 2000, respectively); the numbers in parentheses specify the disk and volume numbers of the respective partition, followed by the folder in which Windows is installed. The third entry points to a DOS partition (Windows Me in this case), where the syntax is merely the drive letter of the volume containing the OS.

You’ll notice that one of these entries matches the value of the default entry in the [boot loader] section.

To change the default OS and the timeout without editing boot.ini directly, go to Control Panel System and click Settings in the Startup and Recovery section. Unfortunately, if you want to rename one or more of the captions in the menu, you’ll have to open boot.ini and change the text in the quotation marks.

See “Using the Windows Recovery Console,” in Chapter 6, for additional tools you can used to repair a damaged Windows XP installation and rebuild the boot.ini file.

Activating Windows XP

Product Activation is the euphemistic name given to the new system in Windows XP intended to curb software piracy. It effectively requires every Windows XP user to call Microsoft (or connect via the Web) to obtain a long product activation key for each installation of the product. As though the hefty price tag and 25-character CD key on the back of the CD package in previous versions of Windows weren’t enough, most users of Microsoft’s latest OS are now required to take an additional step to complete the installation procedure.

If you don’t enter the product key within a certain period after installing, Windows XP will expire and subsequently cease to function.[7] In theory, you’ll only have to do this once for each computer running Windows XP, but the activation code is just as susceptible to bugs as any other component of Windows.

Here’s how activation works:

  1. When Windows XP is installed, the 25-character CD Key printed on the CD sleeve is typed by the user and stored in the Registry. The CD Key distinguishes one end-user license of Windows XP from another.

    Windows then generates a 20-digit product ID based on the CD Key and the Windows version.

  2. After Windows has been installed, the Activate Windows XP utility is started. The “Installation ID,” comprising the 20-digit product ID plus an 8-digit hardware ID, is then transmitted to Microsoft. This is either done transparently over a network connection or manually over the telephone.

    The hardware ID, a unique number based on values obtained from hardware in your computer, distinguishes one computer from another. The hardware ID is based on a hardware hash, a long sequence of numbers based on information found in your computer’s hardware. The specific devices used are as follows:

    • Display adapter (video card)

    • SCSI adapter (if available)

    • IDE adapter

    • Network adapter MAC address (if available)

    • RAM amount range

    • Processor type

    • Processor serial number[8]

    • Hard drive

    • Hard drive volume serial number

    • CD-ROM, CD-RW, or DVD-ROM

  3. Microsoft then generates a 42-digit “Confirmation ID,” which is sent back to the Activate Windows XP application (or read back verbally if you’re activating XP over the phone). The machine is officially activated when the confirmation ID is received, cross-checked with the hardware ID and product ID, and finally stored on your computer.

It should be clear that since the confirmation ID is based upon the unique CD key and the unique hardware ID, it represents a single, unique combination of hardware and software. Change any of these components, and the confirmation ID will no longer be valid.

If you attempt to activate Windows with the same CD Key and a different hardware key (effectively installing the same copy of Windows on a different computer), the copy protection will kick in and the product activation will fail. The gray area is what happens when you upgrade part or all of your system.

Now, there is some margin for error built in, so upgrading only one or two of the aforementioned components should not cause a problem. However, simultaneously upgrading your motherboard, processor, memory, and video card will probably raise a red flag, and you’ll probably have to get a new key. Likewise, if you purchase an entirely new computer and install your existing copy of XP on the new machine, you’ll certainly have to obtain a new key from Microsoft.

It probably goes without saying that the automated activation will probably fail at this point, meaning that you’ll have to speak with a Microsoft representative and explain that you’re merely reinstalling and not pirating the software. It remains to be seen how much hassle reactivation will be; suffice it to say that those who upgrade often will bear the brunt of that hassle.

Note that if your system crashes, or if you simply need to wipe everything and reinstall for some reason, the confirmation ID from the previous activation should still be valid. Note that the confirmation ID is only shown if you activated over the phone, and is otherwise invisible; if you used the automated activation over the Internet, all you’ll need to do is run the activation again. Since the hardware supposedly is no different, Microsoft shouldn’t give you any trouble.

Many users may not be confronted with the hassle of product activation at all, for one of several possible reasons. Those systems purchased with Windows XP preinstalled may be preactivated as well, in one of two possible ways. Either the manufacturer may choose to activate Windows before shipping using the method described above, or by a separate mechanism called System Locked Pre-installation (SLP). SLP ties the hardware ID to the system BIOS, rather than the discrete components listed earlier. The resulting system may be upgraded more freely, but if the motherboard is replaced or the BIOS is upgraded (see Appendix B), the owner will have to reactivate the software. The other exception is the version of Windows XP sold with a volume license, usually to large businesses, which doesn’t include the product activation feature at all.

[4] If you have a SCSI-based CD drive, look in your SCSI controller’s BIOS setup screen and enable support for bootable CDs. If your SCSI controller is built into your motherboard, you’ll probably need to first specify your SCSI controller as a boot priority over your hard disk, and then enable bootable CDs in your SCSI BIOS.

[5] If you have the AutoPlay feature disabled (see Chapter 4), or Setup doesn’t start automatically for some reason, open Windows Explorer, navigate to your CD drive, and double-click Setup.exe.

[6] If you’re using a Windows 95 startup disk, you’ll need to obtain DOS drivers from the manufacturer of your CD drive and install them according to the included instructions.

[7] Depending on your outlook, this may be a blessing in disguise.

[8] The processor serial number, in most cases, is not accessible to Windows. See Appendix B for the BIOS setting that affects this.

Get Windows XP Annoyances for Geeks, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.