This weekend I decided to install Service Pack 1 on my home Windows 7 x64 personal computer. As luck would have it the installation failed. The installation reported error 0x800f0a12 when I clicked on the details link. When I check the System Log I found the following event;
Installation Failure: Windows failed to install the following update with error 0x80070643: Windows 7 Service Pack 1 for x64-based Systems (KB976932).
I examined the Component Based Servicing log (C:\Windows\Logs\CBS.log) and found the following two entries;
2011-06-25 09:27:36, Error CBS SPI: (CSPInstall::AutoMountDisableCheck:1026)Bcdedit failed with error code 0x1 hr=0x800f0a12
2011-06-25 09:27:36, Error CBS SPI: (CSPInstall::CompatibilityApplicabilityScan:1471)AutoMountDisable check failed hr=0x800f0a12
With that information I turned to the great and powerful Google in search of enlightenment and found a reference to the following blog post on TechNet, Windows 7/2008 R2 Service Pack 1 fails with 0x800f0a12. That article provided a link to another Microsoft article entitled, Windows 7 and Windows Server 2008 R2 Service Pack 1 (SP1) installation error: 0x800F0A12.
Apparently the error code 0x800f0a12 means the installer cannot access the system partition of the personal computer to update the files. This error can be caused by a few different issues including, the system partition isn’t automatically mounted, Windows is running on a storage area network (SAN), or a disk management tool from another software manufacturer was used to copy (or clone) the disk or partition on which you’re trying to install SP1.
The TechNet article advises users to run Diskpart which is the disk partitioning tool in Windows. However, the Microsoft article provides a command line solution by running the command mountvol /E as an administrator and then rebooting the computer.