We are seeing some issues with one of our shipped games. Some users are complaining about failing to install the prerequisites for UE4. On closer inspection it is failing to install the “vcredist_x86.exe” with error code 0x80070666. This error translates to “Another version is already installed”.
I have managed to reproduce this by installing version ‘14.0.24210’ of the VC++ 2015 Redistributable and then trying to install the 4.10 UE4 prerequisites. I am wondering what the fix would be for our customers. I can think of several and I’m not sure which is the best:
Ask users to uninstall the later update of the VC++ 2105 Redistributable. I can’t see this going down to well and it might break other games on their systems.
Patch the prerequisites to a later version. The version that shipped in 4.13 seems to to exhibit this behaviour. However, I’m not sure if they are compatible with 4.10.
Remove the prerequisites from the build completely and rely on Steam to install DirectX and the VC++ Runtime. I’m not sure about this as I don’t know what else is installed by the prerequisites.
Any guidance on this issue would be helpful. I have included a log file of it going wrong.
Hello Alex, Sorry for the delay, I was out of the office. All three approaches you laid will work. Here are my takes on the three:
Though it should work, I would not suggest going down this route for the very reason you mentioned.
The prerequisites installers that shipped with 4.11, 4.12, and 4.13 are identical. You can use any one of these as they are compatible with 4.10. This is the approach I would recommend as there are complications with manually installing some of the dependencies on various versions of Windows.
In the end the prerequisites installer we provide is just a convenient wrapper for the required third-party dependencies. You could use any number of methods to install these dependencies but the advantage of using the installer we provide is that it knows how to handle edge-case and quirky issues you’ll run into on a number of Windows OS versions. Here is an example breakdown of what is installed on a typical 64bit machine.
- DirectX Runtime via DXSETUP with the following core and optional components
- Visual C++ Runtime
- VC100 via merge modules
- VC110 via merge modules
- VC120 via merge modules
- VC140 via vcredist executable
- .Net 4.0