Crystal Reports 2008 InprocServer + TempDir =“操作尚未实现”

时间:2008-09-11 15:39:21

标签: .net crystal-reports report tempdir

我有一个.NET Web应用程序,它使用CR 2008进行报告。它部署的服务器背负着McAfee,我们想告诉CR使用Windows临时目录以外的临时目录。

Google发现了以下注册表项:

SOFTWARE \ Business Objects \ Suite 12.0 \ Report Application Server \ InprocServer \ TempDir。

添加此密钥会导致CR在我指定的目录中创建一堆临时文件。但是,在报告运行结束时,我得到了“尚未实施的操作”例外。

我正在尝试通过ExportToHttpRequest()将PDF返回到浏览器,如果我不更改进程内服务器的tempdir,则该工作正常。

有没有人遇到过这个?我已经让本地ASPNET帐户完全控制了新的tempdir。

感谢。

4 个答案:

答案 0 :(得分:2)

除C:/ windows / temp之外的其他临时目录应位于您网站的虚拟目录中。只需在您网站的目录中添加该临时文件夹,当您将其虚拟路径设置为在IIS上托管它时,它会自动包含在内。如果你想在D:/ CrystalTEmp这样的其他地方制作它,你需要在你的Inetmgr中添加这个文件夹,只需右键单击这个目录并启用它的网络共享。是的,您需要为此临时文件夹提供网络服务的完全权限。

如果您将网站目录放在inetpub / wwwroot中,那么您不需要授予网络服务权限。

答案 1 :(得分:1)

我使用CR的时间比我想象的要多,但从来没有必要指定不同的临时文件夹。你有什么特别的理由吗?我不知道IIS进程是否可以“简单地”访问它。

什么是“其他”临时目录或更好,“它在哪里”硬盘?

答案 2 :(得分:0)

我们在IIS5下尝试过这个也无济于事。尝试设置TempDir注册表项后,遇到同样的问题。 PDF导出开始失败,尽管所有其他报告导出(显然)都有效。

但是,在运行IIS6的客户端站点上,将临时文件重定向到专用目录可以正常工作。默认情况下,Crystal Reports在其站点上使用目录

C:\ Program Files \ Business Objects \ BusinessObjects Enterprise 11.5 \ Data

作为其临时存储位置,并为ASP.NET帐户提供了在其中创建和删除文件的足够权限。因此,可能存在一些硬连线逻辑,要求在CR安装目录层次结构中创建文件。换句话说,在IIS6下安装CR后,这一切都按预期工作。

对于第12版,显然目录会略有不同。

答案 3 :(得分:-1)

“尚未实施的操作” 更改“字体”类型 - 右键单击​​文本区域。 - 格式设置。 - 更改字体