Hello!
We got several Crystal Report rpt files created with the designer from Visual Basic 6.0 and bound to Access 97 (Jet 3.6) databases. In our VB6 application we use the API of the Crystal Report Engine (CRPE32.DLL) to load, print and show such reports onscreen. This works fine, even in Windows 8
When I load such a report file into Visual Studio Prof 2010 then I can see the report in the integrated Crystal designer and can preview it, modify it and such. Once I save the report it gets converted to the new report format, or when I save it to a different filename then the new report file is in the new format - even if I dont make any changes at all. Just open it, and save it-as with a new name. All great, fine and dandy.
Then I put together a minimal vb net application, consisting just of two forms. Form1 has a button to create a new Form2 window and show it. From2 contains a CrystalReportViewer named RView and the window state is set to maximized. In the Load event I create a new ReportDocument, then .Load the report and then bind the document to the CrystalReportViewer RView.ReportSource.
The vb net application properties contain the references to the Crystal Report assemblies, is set to x86 CPU, and compiles without error or warnings.
The database file is located in C:\Temp, the report file (version 4.6) is located there as well.
When I run the application and use the new report it works.
When I run the application and use the old/original/4.6verion report it fails with a "can load report" error exception (exception.txt).
I found several instances of this error on the net but no solution for me so far, or nothing that helped me to track down the problem. It is not an access violation problem, I also ran Process Monitor in the background and saw that the report file itself was loaded successfully by the process. I dont have anything fancy in this particular report, there is no report selection formular, it doesnt need any parameters and has no linked tables. Jet/DOA access works fine.
So I would rather like to know if it is possible to programmatically convert these old 4.6 reports "on-the-fly" to newer/current rpt format before handing them to the ReportDocument.Load method. Or can I set some properties of the report document (or the report engine or other entities) before loading the report, to give it more leniency towards the 4.6 version report file?
Thank you for your information,
regards
Philipp