Microsoft System Center 2012 Agent removes C++ 2005 Runtime version .762

Problem
Installing the Microsoft System Center Configuration Manager 2012 Agent  (with or without the SCCM 2012 Endpoint Protection) breaks Infor ERP Express (Visual) and also the Barcode module.
The SCCM 2012 client is at RTM.  This problem was not present with Beta 2 of SCCM.
This is the error:
"This application has failed to start because it's side-by-side configuration is incorrect."

The Event Viewer says this dependant assembly cannot be found:
Microsoft.VC80.MFC,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.762"

If I went to c:\windows\winsxs, the folder that should have this assembly is missing.
When I check the Previous versions snapshot of the folder before SCCM 2012 was installed, I can see that the SCCM agent (ccmsetup.exe) had removed the .762 versions.  This was on a x64 machine, but since Visual is a 32 bit app, we need the x86 version of .762.

Problem SolvedThis was tested on Windows 7 Enterprise x64 SP1 with Infor ERP Express Visual Manufacturing 7 RTM with no patches.

The error happens when Visual 7 is looking for this:
Microsoft.VC80.MFC,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.762"

It looks like the Microsoft System Center Configuration Manager (SCCM) 2012 Agent (Not the Enpoint Protection) upgrades the x86 version of The C++ 2005 Runtime to the latest SP1 build and this seems to have removed the folders that relate to build 8.0.50727.762 in the c:\windows\winsxs and replace them with build 8.0.50727.4027

It seems that if a PC is up to date with the latest copy of the C++ runtimes and still has the .762 version, then everything works and that explains why some PCs didn't break.
When SCCM installs, if it finds that the latest .4027 version was already installed by something else, then it skips the install and thus doesn't delete the Runtime version (.762) that Infor Visual 7 needs.

Infor is working to fix this in it's installer for the next Service Pack of Visual 7:
Right now the installer checks to see if the C++ Runtime is there, but doesn't check the version. Since it found the .4027 build, it didn't install the .762 build that would have resolved this issue.


Microsoft needs to update SCCM so that it doesn't remove build 8.0.50727.762

To fix this problem
Download and install the correct C++ 2005 Runtime from here:
http://www.microsoft.com/download/en/confirmation.aspx?id=5638
This should be run on both x86 and x64 machines.

Comments

Popular Posts