Fog Creek Software
Discussion Board




Good packager for VB?

The subject has been brought up a few times, whether it's to talk about WISE vs. InstallShield vs. Inno, but after checking the last one, I notice that it's not smart when building a VB app at least (don't know about C/C++) : Our EXE depends on a bunch of OCX, some developed here, so bought from suppliers... but even when using the add-on ISTool, Inno doesn't seem to be able to just grab the EXE's VBP file, and build a list of dependencies on its own before generating the installer.

Do you know of any good packager for VB that knows how to deal with dependencies? Thanks :-)

Frederic Faure
Tuesday, November 25, 2003

I use the Installshield Professional's (v6.2) Project Wizard and then customize the script. For dependencies, there's a command called "Begin New Scan" under the dependencies menu and it works for me. It starts your project EXE and all you have to do is open up those forms where the underlying code makes use of external DLLs. Of course, its always better to read through its results before updating the project.

Sathyaish Chakravarthy
Tuesday, November 25, 2003

Also check out Setup Factory by the Indigo Rose Corp. Pretty good, IMO.

KayJay
Tuesday, November 25, 2003

Frederic-

As the last poster to bring this topic up, I can tell you what I've been doing with Inno Setup:  I start by running the Package and Deployment Wizard, which *does* correctly pick up all the dependencies, and then it's a tedious-but-relatively-straightforward process to copy the filenames into an Inno script and set options accordingly.  In fact, it's the sort of task that would lend itself well to code automation, but I haven't seen anything to do that yet.

Sam Livingston-Gray
Tuesday, November 25, 2003

Thx everyone :-) I'll give Indigo a try, although after all the horror stories about InstallShield...

>> start by running the Package and Deployment Wizard, which *does* correctly pick up all the dependencies

I meant that I should have to provide and keep up to date a DEP file for each OCX on which the EXE is based, as, obviously, a good packager is able to recurse through all the dependencies :-)

VB's PDW obviously doesn't, which is a pain (I'm missing two DEP, that I'll have to hunt and find to make sure the package really has all its dependents.)

Do you have good experience using Inno or NSIS with VB?

Frederic Faure
Tuesday, November 25, 2003

I use Inno as well and it does not automatically do the dependencies for you.  I have always done that on my own. I guess I don't trust the installers to get everything.  So I look in each vbp project file and take note of all the files referenced.  Also I use depends.exe on each third-party OCX and DLL to see the references. Also good third-party controls will document the dependencies as well.

It may seem a bit labour intensive but you only have to do it when you add new project files and/or components. Plus the side-benefit is that I have all the dependencies documented.

Finally I test the install on a bare bones OS and see if the apps runs properly to make sure I haven't missed anything

I am sure you will let me know if there is a better way :-)

DJ
Tuesday, November 25, 2003

Guess not, but it's a pain :-)

I didn't find depends.exe in VB5's install CD. What is this utility?

Frederic Faure
Tuesday, November 25, 2003

I forget where / how I got it but here is a good link

http://www.dependencywalker.com/

DJ
Tuesday, November 25, 2003

Thx, I already have DependencyWalker. Haven't used it enough to tell if it's solid, but since packagers usually require that we do that part ourselves...

Thx :-)

Frederic Faure
Tuesday, November 25, 2003

We use Installshield Express for our VB apps.

Very happy with it. We had some problems when it was on version 2.x but no problems on 3.x or 4.x

IS has an option to build an install from the VB application, where it picks up all the required files. We have quite a lot of dependancies and all is ok with us.

We have deployed it at more than 2000 users and the only problem we have had is if something goes wrong with Microsoft Installer on the users PC, prior to us installing it. Very rare, less than 1% of PC's. In that case all they need to do is reload MSI, which we also deploy on the CD or they need to download it via web.

If we had to do it again I wouldn't go for MSI based installation.  Although I guess that is the future.....

Liam
Wednesday, November 26, 2003

>>If we had to do it again I wouldn't go for MSI based installation

Does it mean that InstallShield gives you the option of relying on MSI or doing it themselves?

Thx

Frederic Faure
Wednesday, November 26, 2003

IS Express uses MSI but you do have the option to use the IS Scripts or MSI in some of the other products.

See:  http://www.installshield.com/

"DevStudio ... let you author reliable and flexible MSI or InstallScript installations"

Liam
Thursday, November 27, 2003

*  Recent Topics

*  Fog Creek Home