Rip's Domain

Crystal Reports XIR2 not displaying PDF reports on Windows 2008 and IIS 7.x

Posted in TechSupport, Windows by rip747 on September 9, 2011

UPDATE: I’ve tightened up the permissions that the Windows\Temp directory needs. Seems that IIS_IUSRS requires Modify permission.

I’ve been tackling this problem for a few weeks now. We are in the process of consolidating servers at my work and moving them all to a Windows 2008 (32-bit) server running IIS 7. There is one app in particular that was giving us problems that was using Crystal Reports XIR2.

What was happening was that when Crystal was generating a report to PDF and pushing it to the browser, the browser would just keep working and nothing was getting displayed. This resulted in the dreaded “Load Report Failed” error in the application event log. Also if you looked in the Widows\Temp directory, you would see the *.rpt file would never get deleted. Seems that something was blocking not only the Crystal from generating the PDF, but also from deleting the *.rpt file that was generated.

After weeks of trying everything I could think of under the sun and even contacting Microsoft about this, I couldn’t get a solution. Needless to say I had to figure this out myself, which is exactly the type of problems I like since it brings me back to my administrator roots 😉

In order to finally get this working, I had started from scratch. I first reinstalled all the software that the old server had on it:

Crystal Reports XI Release 2 .Net 2005 Server

I tried pulling up the report again and total fail. Looking at the dates of the dlls in the “C:\Program Files\Business Objects\Common\3.5\bin” directory on both servers, I noticed that the dates of the files were different. The ones on the old server were from 2008 while the ones on the new one were from 2006. Looking at the list of installed programs on the old server, I could only see that “Crystal Reports XI release 2 .Net 2005 Server” was the only things installed, very strange.

I asked a co-worker of mine if we had the full version of Crystal Reports XI Release 2 laying around anywhere and it turned out we did. I figured that maybe by installing the full version along with all the service packs for it, the dlls on the new server would get updated. I next installed the following:

Crystal Reports XI Release 2
Crystal Reports XI R2 Service Pack 2
Crystal Reports XI R2 Service Pack 3
Crystal Reports XI R2 Service Pack 4

and for good measure:

BusinessObjects Enterprise XI Release 2 Service Pack 1

After installing the software, I checked the dlls and they were at the 2008 date! Awesome! Tried the app again and… Nothing 😦

At this point I figured that it had to be a permission issue since 95% of the problems you encounter with Windows 2008 are permission issues. I downloaded and ran ProcessMonitor on the server, filtering by “Process Name” and selecting “w3wp.exe” as the process. I cleared the events and started the capture.

After hitting the site and replicating the error again, I looked in the events that ProcessMonitor captured. I noticed that at the end, I was getting an “Access Denied” on the Windows\Temp folder. I remembered that sometimes you will need to give the “Network Service” user modify access to Windows\Temp folder if web applications are using it. After configuring the security on the Windows\Temp folder I tried again. I still got the same “Access Denied” error 😦

At this point I was stumped, until I realized that the site was configured to also use “ASP.Net Impersonation”. Maybe it wasn’t using the “Network Service” account but the credentials of the person hitting the site? For the heck of it, I gave “Everyone” full control on the Window\Temp directory. Tried the site again and… Success! The app worked.

Now that I’ve gotten through the problem, I’m going to dive more into it since I’m not liking the fact of having “Everyone” full control on the Windows\Temp directory, but at least everything is working.

So in summary, in order get through this issue, you will need to install the following software:

Crystal Reports XI Release 2 .Net 2005 Server
Crystal Reports XI Release 2
Crystal Reports XI R2 Service Pack 2
Crystal Reports XI R2 Service Pack 3
Crystal Reports XI R2 Service Pack 4
BusinessObjects Enterprise XI Release 2 Service Pack 1

and give the following permissions on the Windows\Temp directory:

IIS_IUSRS – Modify “Everyone” full control

If anyone else has had this problem and gotten through it, please tell me what you did to resolve this.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: