I am in the process of migrating 32-bit application to 64-bit. To make the current Crystal Reports component working with 64-bit, I did the following:
1) Ran the Install Executable of CRforVS_13_0_12 and selected 64-bit at the end of the installation
2) Referenced the required assemblies to the newly installed version 13.0.12.1494 located in “…\SAP BusinessObjects Enterprise XI 4.0\win32_x86\dotnet\” directory (note that this is weird that nothing can be found under the “win64_x64” folder)
3) Compiled my application in x64 platform (succeeded)
4) Set “Enable 32-Bit Applications” to false for the Application Pools in IIS
5) Running application in 64-bit mode looked fine until I ran the Crystal Report. Exception was thrown during Export():
*********************************************
Exception Type: System.Runtime.InteropServices.COMException
ErrorCode: -2147467259
Message: The system cannot find the path specified. TargetSite: System.Object Export(CrystalDecisions.ReportAppServer.ReportDefModel.ExportOptions, CrystalDecisions.ReportAppServer.ReportDefModel.RequestContext)
StackTrace Information
*********************************************
at CrystalDecisions.ReportAppServer.Controllers.ReportSourceClass.Export(ExportOptions pExportOptions, RequestContext pRequestContext)
at CrystalDecisions.ReportSource.EromReportSourceBase.ExportToStream(ExportRequestContext reqContext)
at CrystalDecisions.CrystalReports.Engine.FormatEngine.ExportToStream(ExportRequestContext reqContext)
at CrystalDecisions.CrystalReports.Engine.FormatEngine.Export(ExportRequestContext reqContext)
at CrystalDecisions.CrystalReports.Engine.ReportDocument.Export(ExportOptions options)
Trouble-shooting that I did:
1) This new version 13.0.12.1494 only works if I compiled my application in AnyCPU platform with “Enable 32-Bit Applications” set to True.
2) Here is the info from the corflags for the assemblies under the win32_x86 folder (e.g. corflags CrystalDecisions.CrystalReports.Engine.dll), which indicates they are actually 32-bit:
PE: PE32
32BITREQ: 0
32BITPREF: 0
Any ideas of why the exception above was thrown and how this can be resolved?
Many thanks!