deploying Crystal Reports Runtime onto a server drive get FileNotFoundException error

We have a VB.NET program that wraps BO/Crystal 11 Reporting and Preview functionality into a VB.NET 1.1 exe.  We pass in arguments into it etc, etc.  It works great.  

Background:

Our VS.NET 1.1 solutiuon includes a MS Setup project with that exe, plus all the required Merge Modules from Crystal 11 (11.0, not 11.5), and .NET 1.1 framework etc.
Everything runs perfectly when we run the install program to the local PC, such as c:\program files\widget

When you look into that install folder afterward, you'll see the exe, and a single dll from our project.  The Crystal merge modules install DLLs to "C:\Program Files\Common Files\Business Objects\3.0\bin" and they show up in "C:\WINDOWS\assembly".

This is expected, everything works great when installed locally on the workstation.  However, when you deploy this to 100 PCs this is time consuming.  Each PC needs to install this program *at the workstation*.

Problem:

So, when we attempt to install the same program to a file server (as our customers demand we do) such as to a folder: \\server\apps\widget we have problems running the program.  When we install the program from a workstation and choose a destination folder, the DLLs within the Crystal Merge Modules are installed on the PC that is running the setup program.  Examining the destination folder ( \\server\apps\widget), you see the vb.net exe we wrote and its DLL are present, but the DLLs are installed in the local PCs GAC.  This is not going to work when you move to workstatiuon b and try to run that exe on  \\server\apps\widget\widget.exe.  you get an error:

System.IO.FileNotFoundException: File or assembly name CrystalDecisions.Windows.Forms, or one of its dependencies, was not found.
File name: "CrystalDecisions.Windows.Forms"

Is it even possible or is there are trick that can be done that allows me to install our vb.net widget, Crystal merge module DLLs, etc using out setup program so that we do it once on a central server and then the PCs can then just point to that folder on the server and run our widget.

p.s. we made the Intranet zone Fully Trusted by using .NET1.1 Wizard in Control Panel.
nick05Asked:
Who is Participating?

[Webinar] Streamline your web hosting managementRegister Today

x
 
frodomanConnect With a Mentor Commented:
You're welcome.

Just another stray thought - you might want to consider a web application to handle the reporting piece.  You could install the crystal components on a web server once and have your windows app invoke a browser and point to an aspx page to deliver the reports.  Obviously depends on your client's infrastructure and on your application but it's potentially another workaround option although it does add a lot more things that can go wrong.

Good luck,

frodoman
0
 
frodomanCommented:
To the best of my knowledge this isn't possible.  I believe that the dll's must be in the local GAC only in order to function and I'm not aware of any workaround to this.

I should qualify my answer by saying that of course you could always use Citrix or some other type of VM solution but I assume that is outside the scope of what you're doing.

frodoman
0
 
nick05Author Commented:
Thanks Frodoman.  Yep, that's correct, I can only suggest Citrix, etc. to the customer but ultimately they dictate the environment they run in.  Thank you.

0
 
nick05Author Commented:
Good idea!  Our web client product has this feature now.  I could likely just pull that page and code behind out of that and install it on IIS standalone and then call that URL from the form client app.  Nice thought, cheers Frodoman.
0
All Courses

From novice to tech pro — start learning today.