Well, thanks for that advice . I wish I could do that for quite a long time.
We took the project from another developement company, and it's that huge that it can't be redone in .NET as fast as we would need. The former compapy worked on that application for 10 years and so it became pretty complex.
I feel for you because I used to do that work as well.
Back in the VB6 day.
We used Wise installer to create and deploy our builds, Like VB6 the version we used is no longer supported, but I still use it on my Win7 installs(for another dead language) and it has a very simple method of conditionally installing a file.
I don't use nor do I know NSIS, but it appears the equivalent functionality might be GetFileAttributes
and/or GetFileVersion coupled with some flow control logic.
With that in mind, Is it actually necessary to check versions of every file? Could you use a single file to be your gauge. That is, can you check the version of abc.dll or xyz.ocx and based on that version number run a completely different branch of the installer script that could update your dependencies?
One Last comment about large VB6 apps, I found that using two installs was very helpful.
The first install was a CORE installer. It installed all of the dll, ocx, exe files that were dependencies. This was a heavy(big) installer.
The second install was much lighter and it was used to install the primary components of the application. as well as update individual components from the CORE. This file was used to push out updates to the software.
Of course both files were needed for new installs.
This worked well for us because of our business model.
Last, I did have a scriptable builder for VB6, I'll dig around a bit to see if I still have it. It may be something I can share.
Last Visit: 31-Dec-99 19:00 Last Update: 1-Apr-15 0:56