Do you have a PC in your office that everyone uses heavily? If so, the day will inevitably come when this PC is no longer adequate for the demands that are expected of it. When that happens, it’s time to replace the PC. Your initial thoughts may be something along the lines of, “Cool. New Hardware!” However, after unboxing the new machine, your second thought may be something like, “How in the world am I going to do this?” If this situation sounds familiar, don’t sweat it. In this Daily Drill down, I’ll explain some techniques that you can use to migrate to a new PC.

What’s the big deal?
If you’ve never gone through this situation before, you may be wondering what the big deal is. Keep in mind though that everyone in the office uses this PC. There’s a good chance that there’s lots of software loaded on it that you don’t even have the disks for. Therefore, a clean load on the new system is probably out of the question. There’s also a good chance that the new PC uses an entirely different set of drivers than the one it’s replacing. Therefore, it’s necessary to use a little creativity when migrating from the old computer to the new one.

When migrating from one PC to another, there are a few challenges involved. In the days of MS-DOS, you could simply copy the program directories and your data. However, that isn’t true today. Windows 98 programs require not only that the program directories be copied, but also the corresponding registry entries and .dll files. The real challenge comes in figuring out which .dll files and registry entries go with which programs, and making sure that you copy all of the ones  that you need. Likewise, there will be several files and registry entries that you won’t want to copy. Windows maintains extensive information within the registry regarding the hardware that’s specific to your computer. Such settings can prohibit the new computer from working correctly since they reference hardware that’s specific to your old PC.

I’m going to discuss three methods that you can use to switch over to your new PC. These methods are arranged from least complicated to most complicated. Likewise, they are also arranged from least reliable to most reliable. None of the methods that we’ll be discussing will jeopardize your original data. Therefore, feel free to try any of them to see which one works for you. If a less time consuming method doesn’t work, you can always start over again and use our final solution, which almost always works.

Use a utility
There are many utilities on the market that are designed for the specific purpose of moving data from one hard disk to another. However, keep in mind that these utilities have their limitations. Many of these utilities simply perform a sector-by-sector copy of one hard disk directly to another. On some, but not all, of these utilities, the copy algorithm limits the size of the partition. For example, if you’re migrating data from a 2 GB hard drive, some copy programs will only copy the data to a 2 GB partition on the new hard drive, regardless of the new hard drive’s actual size. However, some of these copy programs don’t impose this limitation. Therefore, it’s best to read up on any such utilities before using them.

Once you’ve copied the old hard disk onto the new one, you’re up against another obstacle: there’s a good chance that the new system has completely different hardware than the old system. If this is the case, Windows won’t boot correctly because of the drivers installed in the other system.

In such a situation, the easiest solution is to boot Windows into safe mode. You can do this by pounding the [F8] key repeatedly during boot up. When you see the Boot Menu, select Safe Mode.

Safe mode will load Windows 98 with a minimal set of drivers. Once Windows 98 has loaded, go to Control Panel and double-click the System icon. When you see the System Properties window, select the Device Manager tab. As you can see in Figure A, the Device Manager offers a Windows Explorer-type view of the computer’s hardware. Using the Device Manager, remove any hardware that’s specific to the old system, such as video cards, network cards, sound cards, and modems. Click the plus sign [+] next to a device category to reveal the actual devices beneath it. You can then select the actual device and click the Remove button. If you plan to remove a network card, be forewarned that doing so will erase most of the network settings. Therefore, if you use static IP addresses or other information that would be hard to recover, be sure to write them down before continuing.

Figure A
Use the Device Manager to remove old device drivers.

Once you’ve finished with the Device Manager, reboot the PC. As Windows 98 loads, it will begin detecting the new hardware. As this happens, supply the driver disks for the new PC as they are requested

The Windows Backup program
Not all migration programs work equally well. If you got stuck with a lame migration utility or if you don’t have one at all, there are other methods that you can use. The Windows Backup program can be a very effective way of migrating your data. Best of all, it you get it for free with every copy of Windows.

If you don’t currently have Windows Backup installed, you must install it on the old PC. To do so, open Control Panel and double-click the Add/Remove Programs icon. When you see the Add/Remove Programs Properties window, select the Windows Setup tab. Next, select System Tools and click the Details button. When you see the System Tools Properties window, select the check box next to Backup and click OK. Windows will install the Backup program and ask you to reboot your computer.

Once you’ve loaded Windows Backup, you can execute it by selecting Start | Programs | Accessories | System Tools | Backup. When the Windows Backup program loads, use the Full System Backup option to create a backup of your old hard disk.

Most new PCs come with Windows 98 preloaded. Simply complete the configuration process and load Windows Backup on the new system in the same manner that you loaded it on the old system. After doing so, you must initiate a restore.

The new system may have problems after the restore because the backup file that you restored on it contained references to the old computer’s drivers. Therefore, like the technique that I discussed earlier, you may have to boot the new computer into safe mode and delete the old driver references before continuing.

The hard way
Although this method tends to be the most tedious, it also happens to be my favorite because it hasn’t failed me yet. Before you begin, you’ll need to create a Windows 98 boot disk. This disk should contain all of the basic MS-DOS files. Make absolutely sure that it contains the following files:, Fdisk.exe, Attrib.exe, and Xcopy.exe.

Boot from the boot disk and format the new PC’s hard disk. Keep in mind that your old PC may have multiple partitions. If it does, you’ll need to create the same number of partitions on the new PC. These partitions should have the same drive letter and be at least as large as their counterparts on the old PC. For example, if the old PC has a 2 GB drive C partition, a CD-ROM drive named D, and a 1 GB drive E partition, you’d want to make sure that you have a C and an E partition that are at least 2 GB and 1 GB respectively, and that you reserve drive D for your CD-ROM drive.

Once you’ve created the appropriate disk structure and formatted the new partitions, disconnect the power and disassemble both PCs. At this point, you need to daisy chain the new PC’s hard disk to the hard disk on the old PC. Doing so usually means connecting an IDE cable to both drives and using the hard drive’s jumpers to make one drive the master and the other drive the slave. Because you’ll be working with the old PC, set the old hard drive as the master, and set the new hard drive as the slave.

Now, boot the old PC using the disk that you created earlier. Make sure that you can access both hard drives from the MS-DOS prompt. Keep in mind that the drive letters on the new drive will temporarily change. For example, if you have a single partition on each drive, both partitions are normally named C. However, since a computer can’t have two C drives, the new hard drive will be addressed as something different, most likely D.

Once you’ve identified each partition and its drive letter, it’s time to prepare the old hard disk for the copy process. To do so, type the following command where C is the letter of the partition that you’re working with on the old hard drive:
ATTRIB C:\*.* /s -s -h -r

This command will remove the system, hidden, and read-only attributes from all files on the partition. This means that you can now freely copy otherwise inaccessible files, such as the registry. Repeat this process on each partition of the old hard disk. The process could take a while depending on how much data is on a given partition. If you receive an error message, try switching to the A drive and then running the command.

Once the ATTRIB command completes, it’s time to begin the copy process. To do so, switch to the A drive and type the following command, where C is a partition on the old hard disk and D is the corresponding partition on the new hard disk:
XCOPY C:\*.* /s D:\

This will copy all files from the old hard disk to the new hard disk. Keep in mind that you must repeat the process for each partition in your system.

When the copy process completes, the data will exist on the new hard disk, but Windows will still reference the old system’s hardware. To get around this problem, create a directory on the new hard disk called WIN98CD. Remove your boot disk and boot your old system in the normal manner. When Windows loads, copy the contents of the Windows 98 CD’s WIN98 directory to the WIN98CD directory on the new hard disk. When this process completes, shut down the PC.

Now, remove the new hard disk and put it back into the new system. Boot the new system from your boot disk and run the FDISK program. Make sure that the primary partition is marked Active. This allows the partition to be bootable. Next, exit FDISK and switch to the WIN98CD directory. At this point, run the SETUP program. Doing so will reinstall Windows 98. By installing Windows 98 on top of the copy that you made, you can overwrite all of the hardware specific information. Doing so will maintain all of the application specific registry entries and files buried deep within Windows.

Once the installation process completes, you should be able to use the new PC just as you did your old PC. There are only two exceptions to this. First, you may have to clean up your desktop. Windows 98 has a nasty tendency to place duplicate icons on the desktop. You can easily delete the duplicates though. The second catch is that long file names are destroyed during the XCOPY process. Therefore, you may have to rename a directory or two after the copy process completes. For example, the Program Files directory will become Progra~1 after the copy completes. If you have an excessively large number of long file names, you might try using the LFNBK utility from the resource kit to backup all of the existing long file names. If you have trouble renaming the directories with the long file names, you can reinstall the programs that are associated with them.

Switching to a new PC can be a real pain in the you know where. In this Daily Drill Down, I’ve discussed three techniques that you can use to make this process easier and more reliable. As you attempt to perform the migration yourself, don’t feel like you have to follow my techniques exactly. Feel free to experiment with combining the pieces of the various techniques that you feel the most comfortable with.

Brien M. Posey is an MCSE and works as a freelance technical writer and as a network engineer for the Department of Defense. If you’d like to contact Brien, send him an e-mail . (Because of the large volume of e-mail he receives, it’s impossible for him to respond to every message. However, he does read them all.)

The authors and editors have taken care in preparation of the content contained herein, but make no expressed or implied warranty of any kind and assume no responsibility for errors or omissions. No liability is assumed for any damages. Always have a verified backup before making any changes.