Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ClickOnce deployment with Crystal Reports prerequisite

I have a .NET Winforms app (created in VS2005) that I deploy using ClickOnce. On one of the forms I have a Crystal Reports viewer control for the user to view the reports, but in order to use that in the app I have to include the the Crystal Reports XI Release 2 prereq which they install prior to installing the app. This basically installs a watered down version of Crystal onto the users machine.

It works publishing this way, but it is sort of a hassle for the user to have to wait on Crystal to install and is a huge hassle for me because publishing the app with the prereq takes a long time to finish because it has to upload the large prereq up to the server.

Since the publish takes so long and new installs are not super common I generally don't include the prereq when I publish changes and instead only publish it with the prereq if a new install is needed.

If you've used ClickOnce to publish an app with Crystal Reports, is this how you've published it or is there an easier/better way.

Is there a way to include/GAC the CR dll's needed instead of including and installing the Crystal Report prereq or is there a way that I can configure the OneClick deployment to not have to copy the file up every time. If I could configure the ClickOnce deployment so that I don't have to include the prereq and instead just point the install to a standard location that would help.

Hope this was somewhat clear and that someone can help out. Thanks

like image 442
Dusty Avatar asked Jun 26 '09 21:06

Dusty


2 Answers

When you deploy a ClickOnce app with prerequisites you can specify where the prerequisites are downloaded from, local or the vendor (such as Microsoft). If you specify the vendor it will not include the prerequisite binaries in your deployment package.

If Crystal has not specified a remote location then you can always do your own prerequisite using the Bootstrapper Manifest Generator. You would then upload the Crystal binaries to a location on your deployment server, create your custom prerequisite using your new binary repository as the vendor site, add the custom prerequisite in your clickonce application and set it to download from the vendors site.

I believe that in VS 2010 you have a third option for ClickOnce prerequisites where you can target a specific site removing the need for your custom prerequisite.

like image 105
Bronumski Avatar answered Oct 15 '22 10:10

Bronumski


From the responses, it seems that this is pretty common so I'll just post what I do to get around the issue for now.

First I'll start that I think Bronumski's response should work, but I've not had success with it in the past when I tried it.

The way that I get around this issue is just to publish the files using ClickOnce to a folder locally and then ftp the files over manually excluding the crystalreport install directory that is created.

I know this is not a good answer for this, but I don't have to deploy very often anymore and so this is my work around to the issue for now. Please read through all of the other answers to find one that might help resolve your issue.

Hope it helps. Thanks

like image 36
Dusty Avatar answered Oct 15 '22 10:10

Dusty