RDLC报表 在WinForm里运行出现 未能加载文件或程序集microsoft.reportviewer.winforms

时间:2021-07-11 21:07:17

做一下记录顺便帮助一下遇到问题的朋友。

做RDLC报表在WinForm运行,在VS里面调试引用了“Microsoft.ReportViewer.Common.dll”和“Microsoft.ReportViewer.WinForms.dll”调试运行的时候没有问题。

之后我直接把Bin文件夹下的Debug目录拷到别的机器上运行,打印的时候出现了“未能加载文件或程序集microsoft.reportviewer.winforms”的错误。这是貌似因为在调试

运行的时候Bin目录的引用的DLL是本地路径下的,没有打包成安装程序在程序目录下没有这两个DLL,于是把这两个DLL文件拷贝到程序运行目录下重新在引用。紧接着又蹦出

了一个错误。具体的忘记了,大概是  on print Processing 什么的错误,这个问题测试了一下如果在运行软件的目标机器上 安装了 ReportViewer就不会有这个问题了,可是又

不能在每个客户机上都安装一遍ReportViewer。

解决这个问题:

1、可以把ReportViewer.exe文件解压出来。

2、找到里面的扩展名为“cab”的文件,继续解压。

3、找到扩展名为“cab”文件解压后目录里的“FL_Microsoft_ReportViewer_ProcessingObject_125592_125592_x86_ln.3643236F_FC70_11D3_A536_0090278A1BB8”。

4、把这个文件拷贝出来更改名称为“Microsoft.ReportViewer.ProcessingObjectModel.dll”。

最后把这个DLL文件放入Bin文件目录下在到VS里面引用一下。OK问题解决了!