Installing the x64 version of Crystal Reports we get the following error on random machines:
Product: SAP Crystal Reports runtime engine for .NET Framework
(64-bit) -- Error 1935. An error occurred during the installation of
assembly component {837BF1EB-D770-94EB-A01F-C8B3B9A1E18E}. HRESULT:
0x8007054F. assembly interface: IAssemblyCacheItem, function: Commit,
assembly name:
Microsoft.VC80.ATL,version="8.0.50727.4053",publicKeyToken="1fc8b3b9a1e18e3b",processorArchitecture="amd64",type="win32"
It installs correctly the x86 version.
Looking at internet we have found and tried the following things:
- To increase the size of the RegistrySizeLimit registry value. It worked on some machines, it doesn't on others.
- To execute a transaction log reset: fsutil resource setautoreset true C:. No difference.
Interesting symptoms found:
- All the failing machines have issues with Windows Update. The update log shows a KB (not always the same) giving a endlessly repeating error.
- Executing a SFC /scannow always says that there is a pending change and a reboot is needed (if you reboot it still says the same).
- Looking at the windows characteristics the window appears almost empty without most of the elements that should be present.
Any ideas about how to install Crystal Reports and how can it be related with Windows Update?
Answer
I fought this exact problem today with both x64 and x86 versions of the Crystal Reports runtime, and I found a (painful) way to install them after all.
The reason is that the installer for Crystal Reports Runtime v13.x declares a dependency on the Visual C++ Runtime 2005, but that installer is in turn very broken. It will not recognize itself or later 2005 builds as already installed, so an install will always be attempted, even if unnecessary.
This wouldn't normally be much of a problem, but it turns out that the installer is also somehow incompatible with .NET Framework installers. So if you're on Windows 7 and you have already installed, for example, .NET Framework 4.6.1, then all Crystal Reports Runtime installations will fail with very obscure messages related to WinSxS and so on.
They simply won't play game, and there's no command-line switch to the Crystal Reports Runtime installer to skip VC++ Runtime checks.
To add fun to the party, just uninstalling .NET Framework 4.6.1 will not do the trick, because it leaves files lingering around unless programs that use it are also uninstalled first!
So what I did was:
Uninstall everything I suspected needs .NET Framework 4.6.1 (Visual Studio 2010 and ALL it's dependencies, including SQL Data tools, etc.)
Uninstall .NET Framework (this rolls back the system to the default version. 2.0 in the case of Windows 7, I believe)
Uninstall all Visual C++ runtimes.
Uninstall all Crystal Reports runtimes, if any.
Reboot
Install the Crystal Reports runtimes (x86, x64).
Reinstall .NET Framework 4.6.1
Reinstall the Visual C++ runtimes.
Fortunately, I did not need VS2010 anymore, I had 2015 installed as well.
Now everything works!
No comments:
Post a Comment