Microsoft KB Archive/935823

From BetaArchive Wiki

Article ID: 935823

Article Last Modified on 4/19/2007



APPLIES TO

  • Windows Vista Enterprise 64-bit Edition
  • Windows Vista Home Basic 64-bit Edition
  • Windows Vista Home Premium 64-bit Edition
  • Windows Vista Ultimate 64-bit Edition
  • Windows Vista Business
  • Windows Vista Business 64-bit Edition
  • Windows Vista Enterprise
  • Windows Vista Home Basic
  • Windows Vista Home Premium
  • Windows Vista Starter
  • Windows Vista Ultimate



SYMPTOMS

During an upgrade to Windows Vista from Microsoft Windows XP or from another version of Windows Vista, a computer may restart unexpectedly. When this problem occurs, the operating system is rolled back to the previous operating system.

Additionally, the following message is logged to the Setupact.log file:

Info SYSPRP SPPNP: Reinstalling devices on the system

CAUSE

This issue may occur if a problem is encountered in Windows Vista Setup during device installation.

RESOLUTION

To resolve this issue, you must first determine what device is causing the problem. Then, you must stop Windows Vista Setup from migrating the driver for that device. To do this, follow these steps.

Step 1: Roll back to the earlier version of Windows

  1. Restart the computer, and then press the DOWN ARROW key as the computer restarts.
  2. On the Windows Boot Manager screen, select Setup Rollback.

Step 2: Analyze the setup logs

After Windows starts, locate the following setup log files:

  • \$Windows.~BT\Sources\Panther\Setupact.log
  • \$Windows.~BT\Sources\Panther\Setuperr.log
  • \$Windows.~BT\Sources\Panther\Setupapi\Setupapi.app.log
  • \$Windows.~BT\Sources\Panther\Setupapi\Setupapi.dev.log

To determine whether this issue is caused by a migrated driver or by a reassembled driver, follow these steps:

  1. Open the Setupact.log file, and then examine the last line in the file. If the last line in the file resembles the following line, go to step b:

    Info SYSPRP SPPNP: Reinstalling devices on the system

    If this line does not resemble the last line in the Setupact.log file, see the "Step 4: Stop Windows Vista Setup from migrating all drivers" section.
  2. Note the date and the time stamp that are shown on the last line in the Setupact.log file.
  3. Open the Setupapi.dev.log file, and then examine the end of the file. Typically, a driver issue that occurs during the Setup program causes non-ASCII characters to be written to the bottom of the Setupapi.dev.log file.
  4. Starting from the bottom of the Setupapi.dev.log file, scroll until you locate three right angle brackets (>>>). The three angle brackets indicate the beginning of the last driver installation event. Note the date and the time stamp on the line that you locate. Typically, the time stamp will be a minute or two after the time stamp that you noted in the Setupact.log file. If the time stamp is earlier than the time stamp that you noted in the Setupact.log file, verify that you are using the correct log files.
  5. In the Setupapi.dev.log file, locate the section of the file that resembles the following:

    ndv: Selecting best match

    This section records the name of the information file (.inf) that was selected to be the best .inf file to use for the device.
  6. Locate the “Select Best Driver” subsection. The .inf file that is used to install the driver is identified in the “Selected driver" line. For example, locate the following section:

    dvi: {Select Best Driver}
    dvi: Selected driver installs from section

  7. Use the name of the .inf file that was used to install the driver to determine whether the driver is an in-box driver or a third-party driver. To do this, use one of the following methods:
    • Locate information about the driver signer in the Setupapi.dev.log file. If you see an entry for the specific .inf file that states “Signer Score - INBOX," the driver is included in Windows Vista. In this case, disconnect the device that is associated with the driver, and then restart the upgrade process. If you do not see the "Signer Score - INBOX" entry, this issue is caused by a third-party driver that is migrated by Windows Vista Setup.
    • Search the Setupact.log file for the .inf file name. Migrated third-party drivers are listed in the Setupact.log file when the driver packages are collected and reassembled. Driver packages are collected and assembled from the Driver Store when you run Setup on a Windows Vista-based computer. Alternatively, driver packages are collected and assembled from the OEM*.inf files when you run Setup in Windows XP or in earlier versions of Windows. Note the name of the .inf file that you have identified.
  8. If you verify that the driver was migrated during Setup, remove the device or the driver from the existing operating system, and then try to upgrade to Windows Vista.

Step 3: Block the migration of a specific driver

To complete this section, you must have identified the name of the .inf file for a driver that is being used during Setup. If you cannot determine the name of the specific .inf file, see the "Step 4: Stop Windows Vista Setup from migrating all drivers" section.

For an upgrade from Windows XP to Windows Vista

If you are upgrading from Windows XP to Windows Vista, follow these steps to stop a driver from being migrated from Windows XP to Windows Vista:

  1. Follow the steps in the "Step 2: Analyze the setup logs" section to determine the device name from the installation entry.
  2. Determine which OEM .inf file is being migrated from Windows XP to Windows Vista. To do this, open the Setupact.log file, and then look for the .inf file name starting at the beginning of the file. You should find an entry that identifies the source OEM .inf file name. The entry will resemble the following file name:

    OEMNumber.inf

    For example, the file name may be OEM8.inf. Note the name of the OEM .inf file.
  3. Verify that the driver is not used to support the mass storage controller or the disk controller driver. If the driver is for the disk controller, try to obtain an update for the driver.

    If an update is not available for the driver, verify that the device is supported by an in-box Windows Vista driver. To do this, search the Setupapi.dev.log file to determine whether an .inf file is listed in the same driver installation event that is marked “Signer Score - INBOX." If a compatible in-box driver is listed in the device installation entry, go to step d. If a compatible in-box driver is not listed, see the "Step 4: Stop Windows Vista setup from migrating all drivers" section.
  4. Click Start, type Device Manager in the Start Search box, and then press ENTER.
  5. In Device Manager, locate the device.
  6. Right-click the device, and then click Uninstall.
  7. At a command prompt, type the following commands. Press ENTER after each command.

    cd \windows\inf
    ren OEM_.inf_File_Name OEM_.inf_File_Name.old

  8. Try to upgrade the operating system.

If the problem still occurs, you may have to prevent the migration of all drivers during the upgrade. For more information, see the "Step 4: Stop Windows Vista Setup from migrating all drivers" section.

For an upgrade from Windows Vista to Windows Vista

If you are upgrading from one version of Windows Vista to another version of Windows Vista, follow these steps to stop the driver from being migrated during the upgrade process:

  1. Follow the steps in the "Analyze the setup logs" section to determine the device name from the installation entry.
  2. Verify that the driver is not used to support the mass storage controller or the disk controller driver. If the driver is for the disk controller, try to obtain an update for the driver.

    If an update is not available for the driver, verify that the device is supported by an in-box Windows Vista driver. To do this, search the Setupapi.dev.log file to determine whether an .inf file is listed in the same driver installation event that is marked “Signer Score - INBOX." If a compatible in-box driver is listed in the device installation entry, go to step c.

    If a compatible in-box driver is not listed, see the "Step 4: Stop Windows Vista Setup from migrating all drivers" section.
  3. Click Start, type Device Manager in the Start Search box, and then press ENTER.
  4. In Device Manager, locate the device.
  5. Right-click the device, and then click Uninstall.
  6. Click Start, click All Programs, click Accessories, right-click Command Prompt, and then click Run as administrator.
  7. In the User Account Control dialog box, click Continue.
  8. To determine whether the problem .inf file exists, type the following command at a command prompt, and then press ENTER:

    dir .inf_File_Name /a /s 10

    If the file is not found, retry the upgrade.

Step 4: Stop Windows Vista Setup from migrating all drivers

If you cannot determine the driver file that is causing this issue, follow these steps.

For an upgrade from Windows XP to Windows Vista

  1. Verify that the problem did not occur during the Microsoft Windows Preinstallation Environment (Windows PE) part of Windows Vista Setup and that the Online Configuration phase started successfully. To do this, view the Setupact.log file to determine whether an entry that resembles the following exists:

    IBS InstallWindows:Setup Phase = 4

    If this entry does not exist, go to step b. If this entry exists, there was a problem when Setup entered Windows PE mode or when the First Boot Agent (FBA) ran. The problem may be caused by a disk controller driver.

    To determine which .inf file is used to support the disk controller, follow these steps:

    1. On the Windows XP-based computer, click Start, click Run, type MSInfo32, and then click OK.
    2. In System Information, expand Software Environment, and then click Signed Drivers.
    3. Locate the disk controller in the Device Name column.
    4. In the INF Name column, verify that the .inf file name is not an OEM .inf file. If the file is an OEM .inf file, note the name of the file. You will need this file name to complete step b.
  2. At a command prompt, type the following commands. Press ENTER after each command.

    Cd\windows\inf
    Ren oem*.inf oem*.old

    If you determined in step a that the disk controller uses an OEM .inf file, type the following command, and then press ENTER:

    Ren OEM_Disk_Controller_File_Name.old OEM_Disk_Controller_File_Name.inf

  3. Shut down the computer, and then remove nonessential hardware devices from the system.
  4. Start the computer, and then try to upgrade the computer to the Windows Vista operating system. If you still cannot install the Windows Vista upgrade, you may have to complete a clean installation.

For an upgrade from Windows Vista to Windows Vista

To stop drivers from being migrated during Windows Vista Setup, uninstall all hardware devices that are not using in-box drivers. To obtain a list of devices that use third-party drivers, follow these steps:

  1. Click Start, type MSInfo32.exe in the Start Search box, and then press ENTER.
  2. In System Information, expand Software Environment, and then click Signed Drivers.
  3. Click INF Name to sort the .inf files.
  4. In the INF Name column, locate the .inf file names that resemble the following:

    OEMNumber.inf

  5. For each OEM .inf file that you locate, note the name of the corresponding device in the Device Name column.
  6. Click Start, type Device Manager in the Start Search box, and then press ENTER.
  7. On the View menu in Device Manager, click to select Show hidden devices. A check mark appears next to Show hidden devices when it is selected.
  8. Locate one of the drivers that you noted in step d.
  9. Right-click the driver, and then click Uninstall.
  10. Repeat steps h through i for each driver that you noted in step d.

    Note Some device names in Device Manager may appear as a variation of the name that you identified in System Information. For example, the drivers that are listed in Network adapters may appear as text to the right of a network interface name. In this case, remove the Device Manager entry that contains the driver name.
  11. After the drivers are uninstalled in Device Manager, try to install the Windows Vista upgrade. If you still cannot install the Windows Vista upgrade, you may have to complete a clean installation.


MORE INFORMATION

For more information about issues that may occur when you try to upgrade to Windows Vista, click the following article number to view the article in the Microsoft Knowledge Base:

930743 A list of Microsoft Knowledge Base articles is available to help troubleshoot error messages that you may receive when you try to upgrade to Windows Vista


For more information about how to install Windows Vista, click the following article number to view the article in the Microsoft Knowledge Base:

918884 How to install Windows Vista



Additional query words: winvista boot dll fail failure

Keywords: kbprb kbexpertiseadvanced kbhowto KB935823