Configuration Manager 2012 for the first time offers a 64-bit native client. This will create problems if you’re using a 32-bit native application that depends on COM interfaces defined by the older 32-bit client. The most likely issue would be your applications failing with a 0x80040154 (class not registered) error. Fortunately, you don’t need to despair or rebuild your programs for 64-bit (or “Any” if .NET).
We have shipped a set of compatibility shims as part of the program bundle that will allow 32-bit programs to invoke COM methods against the 64-bit client. You will need to install the 32BitCompat.msi that is part of the CD. It can be found under SMSSETUP\BIN\X64. You can even deploy this to your 64-bit clients as part of an application deployment. Make sure you scope this to run only on 64-bit systems as it will fail to install on 32-bit systems.
The following are shimmed out to allow 32-bit interoperability:
- ccmcca.dll
- ccmcisdk.dll
- ccmctm.dll
- ccmexec.exe
- ccmproxy.dll
- ciagent.dll
- contentaccess.dll
- cpapplet.dll
- dcmagent.dll
- execmgr.dll
- rebootcoord.dll
- rtconfig.dll
- scanagent.dll
- sched.dll
- smsclient.dll
- smssha.dll
- srcupdatemgr.dll
- srvwinmgr.dll
- statemessage.dll
- uiresource.dll
- updatesdeployment.dll
- updatesstore.dll
Note: This is only required if you’re using 32-bit native applications for COM interop. 64-bit native applications, or .NET applications compiled as “Any” do not require this to be installed.