I just messed up my system by trying to have both uV4 (8051) and uV5 (ARM) on my PC. The first sign something is wrong is that uV4 was unable to recognize Teridian and Maxim SoCs as targets. After contacting Keil support, I uninstalled both uV4 and uV5, then reinstalled uV4. When I start uV4, it opens up as the uV5 GUI. Even the icon is showing µ5 in green, as opposed to µ4 which would be blue. Very strange.
I've just come across this situation. Happily running uVision4 for years, now using uVision5 in evaluation mode. Each installed in separate directories off the root.
Whatever I tried to do with file associations, the UV4 of uVision5 always ended up being executed.
My solution: rename the UV4.exe of uVision5 to something different (for me UV5.exe) and adjust shortcuts, icons etc. Then the association changes were successful.
I then found: http://www.keil.com/forum/56919/
Would have been nice for the Keil installation to sort this out properly.