【发布时间】:2011-09-27 01:22:09
【问题描述】:
我支持旧版 MFC C++ 应用程序 (VS2005),我想调用一些 SSRS 报告 (MS Reporting Services)。我希望使用 MS Report Viewer 控件,但它仅适用于 .Net。我提出了一些想法,但我一直认为我在与一些传统知识作斗争。我希望得到第二个意见。
我们已经设置了报表服务器(远程服务器处理)。直接从这个 MFC 应用程序调用报告会非常好(即显示客户的摘要报告等)。现在,我们目前只是使用 URL 中的参数直接调用 Internet Explorer。这很简单,它有效,但它相当有限。例如,我无法设置打印机选项。
我会提到我们的项目无法使用 /clr 选项进行编译——我们使用了一些 3rd-party 库,并且在这些库和其他库之间,我们得到了太多的链接错误。试图让它与这个项目一起工作是不可行的。
我想到了创建一个简单的 c# 应用程序来包装 ReportViewer,并通过一些命令行选项(服务器、报告名称)来控制它。然而,这对参数没有太大帮助——我必须想出一些发送参数的方法,然后我们的包装程序必须将它们解析出来,等等。
我也想过创建一个 dll 并从 MFC 调用它,但我一直在想我会再次遇到同样的参数问题。
如果有报告查看器的 MFC 版本,那就太好了,但是我在网上进行的任何搜索都没有结果。我花了一段时间才弄清楚从我的示例 c# 程序中进行正确调用所需的一切。有人有什么建议吗?
【问题讨论】:
-
您可以使用浏览器控件,然后将 URL 传递给报表吗?
-
凯特 - 感谢您的发帖!浏览器控件不是和直接调用IE差不多吗?
标签: reporting-services mfc visual-studio-2005 reportviewer