2

我的项目中有 ReportViewer,当我在 Windows XP 上安装应用程序时,当我尝试使用 ReportViewer 进行报告时,它会这样说:Windows XP 上的 System.IO.FileNotFoundException

Could not load file or assembly 'Microsoft.ReportViewer.WinForms,
Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91 or one of its dependencies.
The system cannot find the file specified. File name: 
Microsoft.ReportViewer.WinForms, Version=11.0.0.0, Culture=neutral,
PublicKeyToken=89845dcd8080cc91

当我在装有 Windows 8 的笔记本电脑上安装此应用程序时,一切正常。我该如何解决这个问题?我试图通过互联网搜索,但没有发现任何帮助。

谢谢你的时间。

4

1 回答 1

2

我有同样的问题。您对 Report Viewer 可再发行组件是正确的,但您需要另一个版本。这两个中的一个应该可以解决问题:

Microsoft Report Viewer 2012 Runtime CTP - 如果我没记错的话,这是我使用的。

微软报告查看器 2012 运行时

另请注意,安装 Report Viewer 2012 可能会提示一些其他要求。您也可以在 Internet 上找到这些内容,例如MICROSOFT REPORT VIEWER 2012 RUNTIME还需要(下载页面 -> 附加信息):

服务器处理模式的先决条件 Microsoft SQL Server 2008 Reporting Services 或更高版本。NET Framework 3.5 SP1 或 .NET Framework 4.0 SQL Server 系统 CLR 类型包

编辑

根据MSDN 上的这篇文章和 Report Viewer redistributables 上的信息,它们不能在 Windows XP 上使用。
我听说如果您获取所需的 dll(包括 SQLSysClrTypes)并将它们添加到项目中并在项目中引用它们,您可以克服这个问题。还要确保将“复制本地”设置为“真”。

我不知道这是否会影响 Report Viewer dll 的使用条款(它们是否可以在 ReportViewer 包之外重新分发?)。

编辑 2

根据这一点,您必须检查相应可再发行包的 EULA。我认为需要进一步调查才能确定。

于 2013-08-21T05:36:25.110 回答