Problem with Crystal Reports redistributable package

I know that this blog has DS in its title, but as my job sometimes involves development of various elements of IdM systems, which includes ASP .NET applications it may happen that You will find here developement or application deployment posts.

Actually this is one of such posts.

Today I was deploying at customers systems part of IdM management solution which extends existing IdM solution with group management functionality (I will try to get permission to describe it here as I think it is nice thing in the shape how we've built it). This also includes some reporting functionality and we've decided to use Crystal Reports components to deliver this part. There was no problems with deploying Crystal Reports in development and test environments, but on production server after deploying Crystal Report redistributable package and our application we ended up with error:

System.Runtime.InteropServices.COMException (0x800736B1): Retrieving the COM class factory for component with CLSID {11BD5260-15B6-412D-80DB-12BB60B8FE50} failed due to the following error: 800736b1

It was easy to find that this referrs to Crystal Reports library located in:

C:\Program Files\Common Files\Business Objects\2.7\Bin\sacommlayer.dll

but this wasn't giving us any explanation why this was happening.

We were trying to nail down the cause of this problem, we were trying to re-install Crystal Reports package and reboot machine – all time we were getting the same result, error on web page.

At the end I've tried "old school" method and after Crystal Report redistributable package was installed I've manually (using regsvr32.exe) performed un-register and register operation with this library.

And it works like a charm now :).

I've decided to post it as I found few other peoples looking for solution of this problem on the web so maybe another time search engine will point somebody to this blog post :).