In what should have been a simple 30-45 minute task to update 2 Exchange Server 2007 SP3 severs to Cumulative Update 10, ended up being many hours of hell. One server upgraded just fine, first shot no issue. The second server on the other hand would get most of the way though, then roll back. Ultimately it was having problems finding files during the install process which seemed very odd. The fix was in the Windows Environmental Variables settings. While %SystemRoot%\Temp should equal C:\Windows\Temp but in this case it did not work. After changing that setting for both TEMP and TMP the update installed just fine.
Just looking at it from this screen is deceiving:
If you edit one of them, you find they are using %SystemRoot%\Temp like:
Changing it to C:\Windows\Temp fixed the issue in this case