Windows表单应用程序错误与水晶报告

3 c# crystal-reports visual-studio

我遇到了大麻烦.我是Windows窗体应用程序的新手.这是我在办公室的首次申请.我的办公室管理人员给了我一个源代码.但他们对此一无所知.

我在visual studio 12(64位)上运行这些代码.一切都在运行,但水晶报告不起作用.引发错误.

错误是:

无法将"CrystalDecisions.ReportAppServer.Controllers.ReportSourceClass"类型的COM对象强制转换为接口类型"CrystalDecisions.ReportAppServer.Controllers.ISCRReportSource".此操作失败,因为对IID为"{98CDE168-C1BF-4179-BE4C-F2CFA7CB8398}"的接口的COM组件的QueryInterface调用由于以下错误而失败:不支持此类接口(HRESULT异常:0x80004002(E_NOINTERFACE)) .

这是截图:

在此输入图像描述

这是代码:

ReportDAL rDal = new ReportDAL();
            receipt r = new receipt();


            DataTable dt = rDal.GetInvoiceHeader(vId);

            //string ww = GetInvoiceHeader(vId);
            r.Database.Tables["ReceiptDetails"].SetDataSource(rDal.GetInvoiceDetails(vId));
            r.Database.Tables["ReceiptHeader"].SetDataSource(rDal.GetInvoiceHeader(vId));
            r.SetParameterValue("pReportDeliveryTime", GlobalData.reportDeliveryTime);
            crystalReportViewer1.ReportSource = r;
Run Code Online (Sandbox Code Playgroud)

任何人都可以精心为我提供解决方案.因为我不太了解视觉工作室.

提前致谢.

sha*_*ani 6

现在也出现了同样的问题.

当我安装CR 13 Update 21时,我的项目在运行时给出了相同的异常.

我刚从Solution Explorer中删除了CrystalDecision的所有引用(实际上属于CR的早期版本,即CR 13 Update 20).

然后我从Solution Explorer => References => Add Reference菜单中添加了新的参考.我CrystalDecision从窗口中选择了所需的包.重建,问题现在消失了. 在此输入图像描述


小智 2

请在客户端计算机上安装较低运行时版本的水晶报表。然后它就会正常工作。就像目前您使用 vs2012 cr 运行时然后使用 2008 运行时它将正常工作。

我有同样的问题,但现在我更改为较低版本,然后它对我来说工作正常。