MICROSOFT REPORT VIEWER 2012之无法加载相关的dll

使用VS 2012开发报表, 如果是使用的微软的报表控件的话,默认是使用的MICROSOFT REPORT VIEWER 2012,本地开发基本上没问题,但是一发布服务器,就会发现坑了,微软挖坑从来就不打招呼,坑你没商量。

之前使用Report Viewer,只要看到类似“Could not load file or assembly xxx”之类的只要去微软下载中心下载相应的MICROSOFT REPORT VIEWER XX RUNTIME就行了,2012就屌爆了,先提供下载链接如下:

http://www.microsoft.com/zh-cn/download/details.aspx?id=35747

装的时候会提示你还需.NET Framework 4.0 SQL Server System CLR Types 包,这是一种多么奇葩的存在哈。看看安装信息就知道了:

  • 老实的程序员可能就被忽悠着去各种折腾服务器打安装包补丁包了,但是哥怒了,到时还要往其他服务器迁移或者发布咋办呢?这不都得装,这不折腾程序员么?
  • 本着程序员何必难为程序员的原则,折腾出解决方案如下:

事实上,只需要找到相关的dll就行,那么你需要找到以下dll:

Microsoft.ReportViewer.WebForms.dll(VS安装目录下的ReportViewer目录,如D:\Program Files (x86)\Microsoft Visual Studio 11.0\ReportViewer,你可以从项目引用的这个dll的属性中找到路径)

zh-CHS目录(简体中文语言包,如果你需要别的语言,那么复制其他的,VS安装目录下的ReportViewer目录,如D:\Program Files (x86)\Microsoft Visual Studio 11.0\ReportViewer)

Microsoft.ReportViewer.Common.dll(GAC,注意版本号为11.0.0.0)

Microsoft.ReportViewer.ProcessingObjectModel.DLL(GAC,注意版本号为11.0.0.0)

Microsoft.SqlServer.Types.dll(GAC,注意版本号为11.0.0.0)

 

如果你不知道如何从GAC中导出DLL文件,那么可以看看这篇文章:

导出你的GAC Assembly中的DLLS

获取到上述文件后,将其放到网站的bin目录即可,报表就可以正常使用了,这样的话,即使迁移或者发布到其他服务器,也不需要安装任何文件了。

另外建议将这些文件纳入源代码管理。

时间: 2024-09-25 00:41:08

MICROSOFT REPORT VIEWER 2012之无法加载相关的dll的相关文章

图片搜索-<img>图片什么时候加载相关问题

问题描述 <img>图片什么时候加载相关问题 文档中有这样一个图片元素,一般来说,该元素被浏览器解析后就会加载src中的链接的图片. 如果,在img的样式表中将图片元素显示为不可见,img{display:none},或者img{visibility:hidden}, 那么,img元素中src链接的图片会照样加载还是不会加载 解决方案 不管显示不显示,都是会加载的,你可以通过浏览器的开发人员工具(一般来说是F12)查看页面请求时浏览器发起的所有请求 解决方案二: 当然加载..还有Image对象

系统加载的问题-系统提示已加载1UA5.1.DLL,但没有找到DLLREGISTERSERVER输入点。无法注册这个文件

问题描述 系统提示已加载1UA5.1.DLL,但没有找到DLLREGISTERSERVER输入点.无法注册这个文件 这是在安装lua5.1.dll控件的时候的提示,我不知道怎么回事,希望各位朋友帮忙解答,谢谢了

弱引用-ios 与xib视图加载相关的内存管理问题

问题描述 ios 与xib视图加载相关的内存管理问题 在通过xib加载视图的时候,我们遵循一个准侧 那就是顶层视图 我们的成员变量要是强引用 若是非顶层视图,而是顶层视图的子视图,为了防止顶层视图被释放以后,字视图还存在而造成的内存泄漏,我们把这字视图的成员变量定义为弱饮用 现在问题是,在ARC模式下,假如我有个视图控制起ViewController,然后有个UIButton子视图 @interface ViewController:UIViewController {weak/strong I

visual studio-vs2013中加载自定义的dll文件失败,怎么解决啊

问题描述 vs2013中加载自定义的dll文件失败,怎么解决啊 解决方案 先把这个dll复制到system32或者exe相同目录下. 解决方案二: 你的DLL需要放到exe目录下.在实例中,需要放到动态库调用测试.exe目录下. 解决方案三: 你这个依赖的dll socketclientzp.dll找不到

jna-java加载不到.DLL文件可能是有哪些原因造成的????

问题描述 java加载不到.DLL文件可能是有哪些原因造成的???? public interface NetSdk extends StdCallLibrary{ NetSdk INSTANCE = (NetSdk) Native.loadLibrary("netSdkDLL"+ File.separator+"NetSdk",NetSdk.class); } 除了路劲不对,可能是哪些原因..... 解决方案 dll依赖其它的dll missing了,也会造成加载

c#- 托管DLL无法加载非托管Dll,怎么办?

问题描述 托管DLL无法加载非托管Dll,怎么办? 比如报错,"无法加载 DLL"libcurl.dll": 找不到指定的模块" 我已经引用了托管DLL libcurlNET.dll,这个托管DLL需要引用libcurl.dll,两个DLL已经放在了同一个目录下,还是报错,请指点·· 解决方案 C#用不着这个库,你直接用httpwebrequest就可以了. 解决方案二: htttprequest 效率低 解决方案三: 托管调用非托管的DLL编写C++非托管DLL以

2012 ++ 32-VS无法加载项目,未能正确加载解决方案中的一个或多个项目,有关详细信息,请参见“输出”窗口

问题描述 VS无法加载项目,未能正确加载解决方案中的一个或多个项目,有关详细信息,请参见"输出"窗口 输出窗口显示:无法加载项目文件 我的工程在自己电脑里能打开,要拿到其他电脑运行不能加载,项目加载失败.同样是VS2012,求解决办法. 解决方案 如果不能保证用户电脑上安装相同版本cuda,那么试试在引用的dll属性里面复制到本地项选TRUE,这样在编译的时候,相应的dll文件会输出到程序文件夹,在运行的时候,后先搜索这个dll调用. 解决方案二: 检查一下你的项目是否引用了等三方类库

office加载项(dll)加载失败

问题描述 我按照msdn提供的方法(http://msdn.microsoft.com/zh-cn/library/ee941475.aspx)为office写了一个加载项项目目前在我自己的电脑上可以使用regsvr32或者直接使用office自带的加载项框加载成功但是换成别人的电脑为什么就提示下面的错误呢?望好心人给个解答 解决方案 解决方案二:路径没错,而且用管理员身份运行的cmd解决方案三:注意系统32位与64位的区别.

解析Java和Eclipse中加载本地库(.dll文件)的详细说明_java

最近在做的工作要用到本地方法,需要在Java中加载不少动态链接库(以下为方便延用Windows平台下的简写dll,但并不局限于Windows).刚刚把程序跑通,赶紧把一些心得写出来,mark.也希望对大家的类似工作有所帮助首先,应当明确,dll有两类:(1)Java所依赖的dll和,(2)dll所依赖的dll.正是由于第(2)种dll的存在,才导致了java中加载dll的复杂性大大增加,许多说法都是这样的,但我实验的结果却表明似乎没有那么复杂,后面会予以详细阐述.其次,Java中加载dll的方式