As much as Microsoft perfected Windows 7 in order to deliver an as smooth-as-possible experience, fact of the matter is that the company couldn’t cover all possible scenarios. This despite the extremely large Beta testing pool, which grew to over eight million participants, according to the software giant. An illustrative example in this context is the perpetual reboot loop in which Windows 7 can be thrown by failed upgrades from Windows Vista.
“When attempting to upgrade from Windows Vista or Windows 7 to Windows 7 the upgrade attempt may fail and display this message: "The upgrade was not successful. Your previous version of windows is being restored. Do not restart your computer during this time",” Microsoft explained.
Windows 7 is designed to roll-back the changes introduced in the upgrade attempt should the process fail. But of course, there are exceptions to every rule, and this is precisely such a case. “When the system restarts it does not roll back to the previous version of Windows, continues with the upgrade and fails with the same message again. This occurs repeatedly and the process is stuck in a loop,” the company added.
Users need to know that restart loops issues are not exclusively related to the scenario described above, and that Microsoft itself has described and documented additional, but similar issues. One such problem, dating back to the post-RTM period, and revealed in August, is related to the way in which computer's Boot Configuration Database (BCD) store is modified in the Windows 7 upgrade process. The issues, although different, produce a rather error message.
However, the latest problem made public by Microsoft is not related in any way to the BCD store, or to the boot configuration of the Vista machine being upgraded to Windows 7. Instead “this may occur if there is a shell folder (Documents, Pictures, Videos, etc...) that is redirected to a location within its own path prior to the upgrade,” Microsoft stated.
The Redmond company doesn’t have an update or a hotfix set up to resolve this issue, nor has it indicated any intention in producing a resolve soon. However, failed Windows 7 RTM upgrades and the associated perpetual reboot loop caused by shell folder redirection have been documented by Microsoft. Affected users can leverage KB 978421 for a resolve to this specific issue. At this point in time, resolving the problem implies following a number of steps, and manually performing a range of actions.
According to Microsoft: “to resolve this issue you will need to enter the Windows Recovery environment and take several steps to locate the duplicate folders and move them to a temporary location to resolve the endless reboots. Once the system successfully does a rollback further steps need to be taken to avoid the problem when the next upgrade attempt is made.
To access the Windows Recovery environment follow these steps:
1. Start the computer with the Windows 7 installation DVD.
2. Select the appropriate language options and click Next.
3. Click on the Repair your computer link at the bottom of the screen.
4. Select the Operating System to repair from the list (Windows 7 under most circumstances), and take note of the Drive Letter assigned to the operating system (like c:). Click Next.
5. In the System Recovery Options window click on the Command Prompt option.
6. In the command prompt window this information will be displayed in white on a black background: "X:\Sources".
To locate duplicate shell folders follow these steps within the Windows Recovery environment:
1. Type "cd c:\users" at the command prompt.
2. Type "dir /s /p", and look for the words "is too long".
3. If you do not see the words "is too long" on the first page, and you see the line "Press any key to continue" press the space bar.
4. Look on the next page for the words "is too long" and continue to press the space bar to advance in pages until you find lines containing "is too long". This may take quite a few pages to get to the end.
NOTE: There may be more than one entry that has "is too long", take note of each entry as the folder names are needed in later steps. Once all the folders with "is too long" have been identified, they will need to be moved to a temporary location. To do this, follow these steps:
1. Type "move" followed by the path of the folder and the name of the temporary location to move to. Example: move c:\users\bob\documents\documents c:\temp
2. Do this for each of the folders that were identified earlier. Once all the invalid folders have been moved, repeat the steps to locate duplicate shell folders to verify that there are no other folders with "is too long".
3. Once completed, type "exit" and press Enter. Click on the Restart button to restart the computer.
4. The system will reboot back to the point where the original message was displayed but this time it will stay longer on this screen and a progress bar will be active. After some time the system will restart again and should rollback into the previous operating system.
5. Once back into the desktop, open "Computer" and navigate to C:\Users and open your user name folder or the user name folder that contained the problems.
6. Right click on each folder one by one and choose "Properties" (these folders would include Contacts, Documents, Pictures, etc...).
7. Click on the Location tab and confirm that the path shown is correctly displaying the path to this folder. Example: The location of C:\Users\Bob\Documents should have the same correct path listed on the location tab "C:\Users\Bob\Documents".
8. If any folder location is not correct, click on "Restore Defaults" and repeat.
9. Once all the folders have been corrected, restart the computer and retry the upgrade process.”