Crystal reports Crystal报告在web viewer中不可见的图像

Crystal reports Crystal报告在web viewer中不可见的图像,crystal-reports,Crystal Reports,我在继承的应用程序(.NET 1.1)中有一些Crystal Reports(V10),它部署在四个“相同”的环境中。在其中三种环境中,它们工作正常。第四,图表图形在web viewer中不可见。如果导出报告,则它们是可见的 IT人员发誓所有四种环境中的一切都是完全一样的,并将问题反馈给我解决。我不知道该怎么做,因为我无法亲自到服务器上检查任何东西。但我不认为这不是一个环境问题 在我看来,Crystal拥有写入文件和检索文件以呈现报表导出版本所必需的权限,但ASP WP在呈现页面时无法访问图形文

我在继承的应用程序(.NET 1.1)中有一些Crystal Reports(V10),它部署在四个“相同”的环境中。在其中三种环境中,它们工作正常。第四,图表图形在web viewer中不可见。如果导出报告,则它们是可见的

IT人员发誓所有四种环境中的一切都是完全一样的,并将问题反馈给我解决。我不知道该怎么做,因为我无法亲自到服务器上检查任何东西。但我不认为这不是一个环境问题

在我看来,Crystal拥有写入文件和检索文件以呈现报表导出版本所必需的权限,但ASP WP在呈现页面时无法访问图形文件

谢谢你给我的任何建议,你可能会帮助我

分辨率
IT人员说:“我们必须将IIS中CrystalReportsViewer10文件夹上的“执行权限”从“仅脚本”更改为“脚本和可执行文件”。所有其他网站都只有“仅脚本”,它们很好。”

需要一个名为“CrystalReportViewer115”的IIS虚拟目录。我认为不同版本之间的确切名称会有所不同。这需要对ASP.NET用户可见。开始查看运行的环境,查看是否安装了此虚拟目录,并将其与故障环境中的虚拟目录进行比较。作为另一项检查,您应该能够在浏览器中输入图像的URL并查看它们。要查找URL,请右键单击图片并选择“属性”。例如:


当您直接浏览到URL时,应该会看到该图片。

转到开始->程序->Microsoft Visualstudio 2008->Visual Studio工具->Visual Studio 2008命令提示符

和类型

aspnet_regiis-c



这将自动复制相应的文件…

我可以在开发环境中将下一个键(处理程序)添加到web.config中来解决此问题:

<system.webServer>
  <handlers>
    <add name="CrystalImageHandler.aspx_GET" verb="GET" path="CrystalImageHandler.aspx" type="CrystalDecisions.Web.CrystalImageHandler, CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" preCondition="integratedMode"/>
  </handlers>
</system.webServer>


<system.web>
  <httpHandlers>
    <add verb="GET" path="CrystalImageHandler.aspx" type="CrystalDecisions.Web.CrystalImageHandler, CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
  </httpHandlers>
</system.web>

在站点的源文件夹中添加
aspnet\u client
文件夹。例如:

C:\inetpub\wwwroot\myapplication\aspnet_client\system_web\4_0_30319\CrystalReportWebFormViewer4

我最近遇到了这个问题:尽管我的决心有点不同:

  • 我尝试在web.config中设置处理程序,但没有解决问题
  • 我尝试在IIS中设置脚本和可执行文件,但没有解决问题
当我进入C:\Program Files\Common Files\Crystal Decisions\2.5\Crystal ReportViewers10文件夹并关闭自定义错误后,我可以看到错误来自C:\Windows\Temp上的拒绝访问问题\

解决方案是不使用和处理程序或改变IIS来运行脚本和可执行文件,而是允许网络服务读取C:\Windows\Temp上的权限\

编辑:
我想我找到了另一个不需要更改权限的解决方案。。。只需为aspnet_客户端设置一个虚拟目录;选择此选项的级别在很大程度上取决于您的IIS布局。

谢谢。我知道我无法在“糟糕”的环境中浏览图像,但我得到的403.1错误应该可以帮助我“证明”环境是不同的。