这句话报的错         poRpt.Load(Server.MapPath("CrystalReport.rpt"));
网上我也查了下。 他是这么说的:
      出现这个错误的主要原因是水晶报表引擎没有权限生成报表。查看了一个服务器的权限设置,发现C盘的根目录Users组没有 权限,只要把Users组设置为对C盘有写入的权限问题就解决了。如果认为User组对整个C盘有写入权限不安全,也可以把Temp目录设为有写入权限,问题也可以解决。
初步估计水晶报表引擎可能要在Temp目录里生成一些临时的交换文件,所以需要C盘Temp目录的操作权限。
   我发现Temp目录 无法把只读属性改掉。
是不是别的问题, 在线等解。
不好意思,只有这么多分了。

解决方案 »

  1.   

    水晶报表每次加载时的确会在temp目录下生成临时文件
      

  2.   

    http://dev.csdn.net/article/77/77848.shtm
      

  3.   

    看了  上面说得好笼统
    6、在 ASP.NET 程序中加载报表时,出错:\Load Report Failed\ 确保 ASPNET 本地用户对报表所在的文件夹有“完全控制”的权限。-------------------------
      

  4.   

    为什么 我那Temp 目录的操作权限 改不了啊?
    把那只读勾掉后,点应用、确定。 再看属性还是 只读
      

  5.   

    asp.net的水晶报表还真没弄过 但是我可以肯定水晶报表加载是 报表引擎确实在temp下会生成临时文件