尝试显示Crystal Report时服务器出错

时间:2010-09-17 10:22:02

标签: asp.net crystal-reports

使用水晶报告生成报告时出现以下错误:     文件C中的错误:\ Windows \ TEMP \ repEnquiry {095737EB-07B4-437D-9E86-85780B7417B0} .rpt: 访问报告文件被拒绝。另一个程序可能正在使用它。

为此,我确实谷歌并找到了一些解决方案,但仍然无法正常工作: 我试过的: - 在我的根目录和报告文件夹上授予对aspnet和网络服务的完全访问权限,然后重新启动iis。

操作系统:Windows Server 2008(64) vs2008申请。

但仍然得到同样的错误。

2 个答案:

答案 0 :(得分:7)

“访问报告文件被拒绝。另一个程序可能正在使用它。”

这是一个非常误导性的错误消息,通常与其他程序无关。实际文件名将根据您的配置而有所不同,但整个错误消息将是相同的,类似于下面显示的内容。

通常,ASPNET用户没有授予它的写入权限,特别是在根目录上没有。在这种情况下,解决方案是将输出目录更改为Web根目录的子文件夹,并授予该文件夹的ASPNET修改权限。如果您使用的是Windows Server 2003,则需要向网络服务授予权限,而不是ASPNET。

如果您已将应用程序配置为以ASPNET以外的用户身份运行,则需要确保该用户具有上述权限。在Windows Server 2003上,您需要向NetworkService用户授予权限,而不是ASPNET。 Win2K3上的.NET Framework使用NetworkService,而在Win2K上使用ASPNET。

在c:\ windows \ temp

上提供写入权限

Dot在设置文件夹权限后忘记重启IIS: 转到运行类型iisreset并按Enter键。

请参阅以下链接以获取完整描述.....

http://dotnetacademy.blogspot.com/2010/09/crystal-reports-net-error-access-to.html

答案 1 :(得分:4)

我知道提问者正在使用Windows 2008,但万一有人像我一样,在Windows 2012 / IIS8世界中搜索此错误时会发现此问题。需要访问C:\ Windows \ Temp的帐户的名称现在是IIS_USRS。