My reports work fine on a 32 bit machine but won't open on 64 bit. 64 bit is required because loading data on one of the screen causes a memory issue - so it can't work on 32 bit.
- Windows 10 64 bit
- Installed Crystal Reports Tried installing 13.0.20(latest) and restarting PC but didn't work.
- Application Target Framework 4.6.2 (i even tried it on 4.0 but same error)
- Using Visual Studio 2017 Community (tried VS 2015)
- Platform x64 (not AnyCPU)
- Reports are being generated by passing DataTable, no active connection or ConnectionString in reports
- Error Message
Edit # 1
Edit # 2
Source Code for showing the report is
CrystalDecisions.CrystalReports.Engine.ReportClass c = new
CrystalDecisions.CrystalReports.Engine.ReportClass();
c.FileName = System.IO.Path.Combine(Root_Path,
"Reports", "Prod", mFileName);
c.Load();
c.SetDataSource(dt); // dt => DataTable
c.SetParameterValue("prmSystemDate", Current_Date);
frmReportViewer v = new frmReportViewer();
v.ReportClass = c;
v.Show();
And frmReportViewer FormLoad is
private void frmReportViewer_Load(object sender, EventArgs e)
{
CRViewer.ReportSource = ReportClass;
//CRViewer =>
//CrystalDecisions.Windows.Forms.CrystalReportViewer
}
Have I gone wrong somewhere?
Edit # 3
DataTable on x86 and x64 are same. (saved the datatables in xml and both files are exactly the same).
Process Monitor shows that my program performs CreateFile
operation on following files
C:\WINDOWS\Microsoft.Net\assembly\GAC_64\CrystalDecisions.Web\v4.0_13.0.2000.0__692fbea5521e1304\CrystalDecisions.Web.dll C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\CrystalDecisions.Web\v4.0_13.0.2000.0__692fbea5521e1304\CrystalDecisions.Web.dll C:\WINDOWS\Microsoft.Net\assembly\GAC\CrystalDecisions.Web\v4.0_13.0.2000.0__692fbea5521e1304\CrystalDecisions.Web.dll C:\WINDOWS\assembly\GAC_64\CrystalDecisions.Web\13.0.2000.0__692fbea5521e1304\CrystalDecisions.Web.dll
All fails with PATH NOT FOUND
Result. It succeeds on
C:\Windows\assembly\GAC_MSIL\CrystalDecisions.Web\13.0.2000.0__692fbea5521e1304\CrystalDecisions.Web.dll
and then two BUFFER OVERFLOW
occurs on this same file.
It only happens on x64. There is no operation related with CrystalDecisions.Web.dll
on x86.
What does it indicate?
DataSource
of the report? Have you tried passing just theDataSet
instead of theDataTable
object? – Geomorphic