This problem was happening in SP1 and the solution is to manually copy the files in C:\Program Files\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\Crystal Reports 2011\crystalreportviewers folder and register PrintControl.dll. I just updated to SP2 and am getting the same error. Are the merge modules going to be updated to correct this at some point?
I assume you are using/building your application in 64 bit platform. We tracked this issue and the cause is there is no 64 bit printcontrol.dll ( activeX ) due to limitations in both Microsoft 64 IE and the Framework.
It won't be fixed.
If you are compiling in x86 mode then we need more info...
There are no Merge Modules for 64 bit so are you asking for them or is your app 32 bit?
If you are building in x86 mode and it is a WEB app then set your app pool to run in 32 mode.
The application is a 32-bit application. The merge modules contain PrintControl.Cab. The CAB file contains the necessary PrintControl.dll and its' supporting files. However, the merge modules do not extract this CAB file into C:\Program Files\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\Crystal Reports 2011\crystalreportviewers\ActiveXControls and register PrintControl.dll. On my development machine the above folder exists and all the necessary files are there and registered. Apparently the CRforVS2010 install does create the above folder and install the appropriate files into it. The CRforVS2010 merge modules do not. There is an incident report I found on the SAP website and basically it said the user needs to install these files; kind of strange since these files are required for windows client applications to print crystal reports.
It's new to us also, We just discovered the PrintOutPut Controller also has a dependency on the printcontrol.dll so it should have been done.
We'll add this to the list of updates to the Merge Modules and other Redist packages.
In the mean time distribute and extra and register the dll manually as suggested...
After looking into the issue if you open the Merge Modules or MSI and search in the File tree you will find it there and it is being registered. It is a COM ActiveX control. As long as it's registered ( regsvr32.exe ) the app should work.
I would check permissions or your install log files, search for "MSIExec logging" for how to, and verify it is being registered.
There is no 64 bit version of this dll which is what the track is about. And won't be, to many problems with MS and IE 64 bit for us to make it work.
The merge module contains PrintControl.cab the PrintControl.dll is located within this CAB file. The DLL is not dropped onto the client during the install. The setup was open with Run as Administrator.
I did log the install and there was no reference to PrintControl.dll. Only PrintControl.CAB was installed. Not sure how to attach the install log file to this thread, it's very large 22mb.
Edited by: Robert Manookian on Feb 27, 2012 11:57 PM