Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

PDF Exports fail on CR 8.5 on VB 6 Program 1

Status
Not open for further replies.

pepito609

Programmer
Nov 4, 2003
12
0
0
US
Hello all,
I have a VB 6 program that creates reports in Crystal Reports 8.5 and exports them to PDF and Excel. All is working well on the development computer (Where the full systems are installed, ie.: VS 6 and CR 8.5) All of the exports work without a hitch.
Nonetheless, when the program is installed on another computer, end-users, the PDF export breaks with "Missing or out-of-date DLL." Crystal's Knowledge base mentions that the crxf_pdf.dll library must be present and that the ExportModeller.dll and crtslv.dll libraries must be present and registered. I have done all of this and I'm still getting the error message.

Interestingly enough, I also have an Excel Export function which works without any problems, using the u2fxls.dll library, on the end-users computers. The reports work fine as well.

I believe that I'm still missing something, but I can not find it anywhere. As if I am missing something related to the crxf_pdf.dll library.

The Question: Have any of you run into this problem and or have a solution?

Enviroment Info:
OS = Windows XP Pro (Both Computers)
Crystal Reports = 8.5 with Service Pack 3 (Dev Only)
IDE = Visual Basic 6.0 with Service Pack 5 (Dev Only)

I have the following DLLs in the working directory of the app in the users' computers:
- crtslv.dll (Registered) (v 8.5.0.144)
- crxf_pdf.dll (v 8.6.2.429)
- ExportModeller.dll (Registered) (v 8.6.0.37)
- u2fxls.dll (v 8.6.2.515)

Thanks for the help,
pepito609
 
This might be relevant:

When you apply one of the later hotfixes for CR 8.5, they start using a "Crystal Desisions\Shared\" folder for the newer .dlls. It's possible that the versions used on the development machine are newer than that of the target. Regardless, search on the development machine for crtslv.dll and ExportModeller.dll to see if you have duplicates.

-dave
 
Okay guys,

First, thanks Dave for the pointer... I started on that note and was able to find the solution.

Here is the solution:

I can not stress highly enough that you MUST have all of the DLLs and their dependencies of the same release. For example if you have Service Pack 3 on CR 8.5, make sure that all the DLLs and dependencies - for the VB guys, your Project References - are of the latest release that you have deployed on your system. See, in this case VB was keeping a reference to the old DLLs, hence not working. You must manually go and tell it to use the new ones.

From what I was able to see this was only a problem with crtslv.dll and ExportModeller.dll as on Svc Pck 3 they sit on a different directory, previously they sat in C:\Program Files\Seagate Software\Share\. The rest remain on their "normal" directories.

If you are not using Svc Pck 3, just make sure that you include all of these Dlls and that you REGISTER THEM!

What you need for the PDF export are:

C:\Program Files\Common Files\Crystal Decisions\2.0\bin\
crtslv.dll
ExportModeller.dll

C:\WINDOWS\Crystal\
crxf_pdf.dll

Now if you like me are trying to use VB and CR to create, view, print, and export your reports you need all of these: (Please note that I've included the above as well for ease of reference, as well as exporting to Excel, and this is using an ODBC Connection to an MS Access DB also.)

C:\Program Files\Seagate Software\Report Designer Component\
craxdrt.dll
craxddrt.dll

C:\Program Files\Seagate Software\Viewers\ActiveXViewer\
crviewer.dll

C:\Program Files\Common Files\Crystal Decisions\2.0\bin\
crtslv.dll
ExportModeller.dll

C:\WINDOWS\Crystal\
crxf_pdf.dll
u2fxls.dll

C:\WINDOWS\system32\
P2smon.dll
p2sodbc.dll
Crpaig80.dll

I hope this helps, it corrected my problem. Also, please note that it really does not matter where you end up deploying these DLLs on the client computer, as long as you REGISTER them properly! For arguments sake please be tighty and keep them in standard places like \Windows\System32\ or those of your preference)

pepito609

Ps.: Please note that this is the same solution as I posted on :

 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top