Picture a scenario. You have a SQL Server failover cluster, with one or more nodes in the cluster, and the databases for your instances are presented via remote storage such as Fibre Channel or iSCSI.
When trying to install SQL 2008 R2 updates, including Cumulative Updates and Service Packs using the application .exe files downloaded from Microsoft (SQLServer2008R2SP1-KB528583-x64-ENU.exe Â for example), the first thing that happens after launch is that the executable extracts the files required to drive, by default, with the largest percentage of free disk space.
Once the files have been extracted, the install wizard will start. After clicking Next, Next, Update through the wizard, the first thing the installer does is to take the SQL Server and the whole cluster resource group offline to allow it to be serviced. If the disk on which your SQL databases exist happens to be the drive with the most free space, the drive where the files where just extracted to, this drive will actually now be offline and will cause the installation to fail with the following error:
Cannot execute a program. The command being executed was “C:WINDOWSMicrosoft.NETFramework64v2.0.50727csc.exe” /noconfig /fullpaths @ “C:UsersUsernameAppDataLocalTemp6xb11xcu.cmdline”.
Error Code 0x84B10001.
The resolution to this problem is to bring the clustered disk resource online using the Failover Cluster Manager, and copy of the GUID folder which was generated by the extraction process to a local disk, or a remote storage disk which you are not servicing with the installer. I found that you need to copy the files to the local disk path before you click OK on the error message as once the update wizard terminates, it removes the temporary files.
Error 0x84B10001 can actually be initiated by other problems, however the knowledge base article at Microsoft Support advises that these other issues are resolved in a Pre-SP1 update for SQL Server 2008 R2.