When installing SQL Server 2008 one can run into “‘Reboot required check failed” situation.
After seeing it few times already, I think a solution is worth mentioning.
“Why don’t you just reboot?”, you say… Well, most likely it would not help you, but try it first.
If this would not help, then try the following:
- Start regedit.exe
- Navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager
- Locate PendingFileRenameOperations
- Remove any data associated with the value (you may want to export the value for later review)
- Reboot and rerun installation, check should pass.
Update. As a respond to some comments about solution above not always work you may consider the following:
- Make sure that after you reboot entry in the registry does not reappear.
If it does, remove it again, but do not reboot, just go ahead with installation process and click “ReRun”. Most likely you would be fine now.
- You may also try and see that other ControlSet001, ControlSet002, etc do not suffer from the same problem (solution mentioned by Mike Hills below).
- There was mentioning that some installations of Visual Studio 2008 could cause check to fail as well. So if nothing from above helped, uninstall Visual Studio (comes with light version of SQL Server), install SQL Server and then reinstall Visual Studio again.
Lets see why would entry reappear… This may happen if there is a driver or application which supports “recovery” mode or plain virus is around and after reboot it is trying to finish the deployment process again. In any situation try and look closer: what app file belongs to, if there are other solutions to the problem so that original process would finish properly, etc.
Update: Recently I was working on the unrelated setup automation for Visual Studio and stepped on a hidden gem which may work here as well: when running setup from command prompt, Windows Installer accepts a parameter called SkipRules. It worth mention the following “How to: Install SQL Server 2008 from the Command Prompt” first and then look at desired parameter
We can ignore first rule, since it is VS related, but second is the one you may want to try.