未能加载文件或程序集 Microsoft.ReportViewer.Common, Version=11.0.0.0

  WinForm客户端软件开发时,使用rdlc做报表,并且使用ReportViewer呈现报表时,开发者的机器运行正常。但是部署到第三方机器上运行时报错。大致有以下几种错误:

(1)未能加载文件或程序集“Microsoft.ReportViewer.Common, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91”或它的某一个依赖项。系统找不到指定的文件。文件名:“Microsoft.ReportViewer.Common, Version=11.0.0.0, Culture=neutral,PublicKeyToken=89845dcd8080cc91”

  (2)RDLC的部署(无法找到Microsoft.ReportViewer.ProcessingObjectModel.dll文件)

  (3)找不到 Microsoft.SqlServer.Types.dll或者其他的依赖项

错误的提示意思是第三方机器上缺少相关dll。到程序开发计算机下找到对应的烤到客户端的程序启动目录下即可(项目烤到Bin\\Debug目录下)。由于以上的dll都是在开发者机器的Windows\assembly目录中,

该目录是微软操作系统预定义的特殊目录,无法直接操作里面的文件,只能通过命令来处理。

启动cmd.exe程序,在窗口中输入以下命令行,每次输入一个命令,回车后复制成功。

copy C:\Windows\assembly\gac_msil\Microsoft.ReportViewer.Common\11.0.0.0__89845dcd8080cc91\Microsoft.ReportViewer.Common.dll D:\ReportViewer

copy C:\Windows\assembly\gac_msil\Microsoft.ReportViewer.WinForms\11.0.0.0__89845dcd8080cc91\Microsoft.ReportViewer.WinForms.DLL D:\ReportViewer

copy C:\Windows\assembly\gac_msil\Microsoft.ReportViewer.ProcessingObjectModel\11.0.0.0__89845dcd8080cc91\Microsoft.ReportViewer.ProcessingObjectModel.DLL D:\ReportViewer

copy C:\WINDOWS\assembly\GAC_MSIL\Microsoft.SqlServer.Types\11.0.0.0__89845dcd8080cc91\Microsoft.SqlServer.Types.dll D:\ReportViewer

【其他的dll复制方式与此类似】

复制到D盘ReportViewer目录后,将其复制到项目的bin\Debug目录,再次运行程序,一切正常。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券