cancel
Showing results for 
Search instead for 
Did you mean: 

Removing unnecessary libraries for deployment

Former Member
0 Kudos

I created a Setup project to deploy a Crystal Reports for Visual Studio 2010. I added the merge module to the setup project and in the properties of the merge module I set the installation of all the database drivers I don't need to 0, as my project only requires connecting to an Oracle 10 database.

I built the setup project to create the .MSI install file for my project.

Yet, the resulting .MSI has all the libraries for other database drivers I excluded and the final file is not a single byte smaller than what I get if I include all the drivers.

This effectively duplicates the size of my application installer. I also noticed that excluding export formats prevents these formats from being used; but again, no file is removed from the deployment MSI.

Any help will be appreciated as I would rather avoid the risky process of generating a .cab file an trying to manually pick the files I need.

Miguel

PS: This sounds like a question somebody else might have posted before, but I made an honest effort to find it without luck.

Accepted Solutions (1)

Accepted Solutions (1)

former_member183750
Active Contributor
0 Kudos

Setting the libraries to 0 does not make the msm smaller. It only creates a command the restricts the install of those dlls. You can also do the same with export dlls. E.g.; setting the option to 0, makes the installed runtime footprint a bit smaller, but that is about it.

Re. manually picking the files you need and creating your own cab file; Don't.You will never, ever make this work. There is much, much more to the install of the runtime files than just a simple copy of the dlls. Otherwise a simple xcopy would also suffice and it does not...

- Ludek

Follow us on Twitter

Got Enhancement ideas? Try the SAP Idea Place

Share Your Knowledge in SCN Topic Spaces

Former Member
0 Kudos

So that's about it. The deployment file cannot be reduced, which means I'll have to figure some other deployment method. Otherwise the simultaneous and automatic push of a new version of my product to potentially hundreds of workstations will clog the annoyingly low network bandwidth of the customer.

I know manually picking files from the cab is a really bad idea, but somehow it seems that's what the configuration manager did for the previous (really old) version of the product running Crystal 9. And that was to try and squeeze just a few bytes from a 9MB install file.

former_member183750
Active Contributor
0 Kudos

Hello Miguel

I suspect in CR 9, they may have been using the Report Designer Component SDK. With this SDK, you could - if you knew what you were doing create your own setup by selecting the dlls. With the CR SDK for .NET, I really don't hold out much hope for this same process (just being honest).  ClickOnce install may work for you, though given your concern re. bandwidth I am not sure. However theoretically, with ClickOnce installs, new versions of an app should only be pushed out when a user uses the app. And presumably, not all hundreds of users will be using the app at the same time.

- Ludek

Answers (0)