Crystal Reports Deployment Problem. (CRViewer.dll)

Posted on 2006-04-05
Last Modified: 2013-11-22
Using VB 6 (sp6)
Crystal Reports 8.5 (sp3)
and install shield 3.5 Express (sp4).

The VB program on my development machine, is pointing to a version of CRViewer.dll that is version dated 8/27/2003.

When I do a build (using install shield) for the VB program I get an Old version of CRViewer.dll, Version - Dated 2/3/2001 in the build.  

When I deploy the program using the build to a target machine, it fails to run the report, but the report runs fine on the development machine.
(The target machine gets the CRViewer.dll version, because
 that is what is in the deployment package.)

But I need to get Version in the to build.

The problem is: I am using merge modules to get the right combination
of crystal report files into the build.

But I cannot find a merge module that will give me the version
of CRViewer.dll, which is what I want. I have downloaded the latest meger modules
from the Macrovision site.

I can manually add the files to the build (in install shield) and
not use the merge modules, but then I might not get the right combination of files I need.

Thanks in Advance,

Question by:misdevelopers
    LVL 3

    Expert Comment

    Use the Package and Deployment tool from Visual Studio.

    After the dependencies check, it will probably list the CRViewer.dll.

    You can remove it by unchecking it in the Include Files screen and then ADD to select the correct version of your CRViewer.dll.

    Author Comment

    I don't think I can do that. I have never used the package and deployment wizard,
    and I don't know if it will do everything that we now get from Install Shield.

    LVL 10

    Expert Comment


    I think you're on the right path wanting to stick the InstallShield packager - it creates MSIs, far exceeds the capabilities of the VB6 P&D Wizard and, importantly, as you already know, it also allows you to take advantage of Merge Modules.

    As the CR DLLs/OCXs are generally downward compatiable, I suspect you should be ok using the CR9 Merge Module available from Business Objects at (please ensure you carefully check exactly which Merge Module set you're downloading though)

    The important thing is that you don't code your application to work with a very specific version of the CR DLLs (a *minimum* supported version makes sense of course) and, afterall, a.n.other application could at any time upgrade the CRViewer DLL and you'll obviously want your app to continue functioning!



    Author Comment

    I stuck with InstallShield, even though we paid for a support call and install Shield support couldn't solve the problem.
    We can't go to Crystal reports 9 as that required programming changes.

    What I did was to remove the crystal reports merge modules in the install shield build project.
    I then had to go in one by one, and manully put in each crystal report file, where they are suppose to be on the target machine.

    I took some time, but it worked, all of the proper crystal report files where install to the target machine, and the report ran fine.

    Thanks for everyones suggestions.



    Accepted Solution

    Closed, 250 points refunded.
    The Experts Exchange
    Community Support Moderator of all Ages

    Featured Post

    IT, Stop Being Called Into Every Meeting

    Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

    Join & Write a Comment

    I was working on a PowerPoint add-in the other day and a client asked me "can you implement a feature which processes a chart when it's pasted into a slide from another deck?". It got me wondering how to hook into built-in ribbon events in Office.
    This article describes some techniques which will make your VBA or Visual Basic Classic code easier to understand and maintain, whether by you, your replacement, or another Experts-Exchange expert.
    Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…
    Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…

    729 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    18 Experts available now in Live!

    Get 1:1 Help Now