Link to home
Start Free TrialLog in
Avatar of ianpugh
ianpugh

asked on

Need help with Installer..

We distribute a 3 CD set every quarter with information relevant to what we do here. Before the project was given to me, there were 8 different installation instructions, four for Win 95/98 and four for Win 2k/NT.

I've been working on developing an application to automate the installation process. I've got a copy of InstallShield Professional 2000, but for this application, this does not seem to be a viable option. The installation process consists of running several different batch files, and then giving the user the option to load Internet Explorer 5.5, Adobe Acrobat, and Autodesk Whip Viewer. Given this criteria, I've decided that InstallShield is not the way to go.

I've developed some framework in VB 6 that will allow me to do this, but it's proving to be a difficult task. I've run into several problems that need to be overcome. Any help you guys can offer on these problems would be greatly appreciated.

The main problem is when I have a long list of batch files that need to be executed, I can't seem to figure out how to execute one batch file at a time, rather than all at once. Here's an example of what I'm doing:

Shell(CDDrv & ":\SetupM\Batfiles\copyQNotes.bat")
Shell(CDDrv & ":\SetupM\Batfiles\copySearch.bat")
Shell(CDDrv & ":\SetupM\BatFiles\copySTKE.bat")
Shell(CDDrv & ":\SetupM\BatFiles\MCSI.bat")
Shell(CDDrv & ":\SetupM\ShortcutE.exe")
Shell(CDDrv & ":\SetupM\SetuphaE.exe")

When I run this procedure, it want's to launch all of the batch files at once. I'm sure it's a simple problem.. Thanks for all of the help!

Ian
ASKER CERTIFIED SOLUTION
Avatar of ckosloski
ckosloski

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of gencross
gencross

Just an idea...

Would it be possible to write the BAT file code in VB and eliminate the BAT files?

You could use the following API call:

Private Declare Function FSyncShell Lib "VB5STKIT.DLL" Alias "SyncShell"
(ByVal strCmdLine As String, ByVal intCmdShow As Long) As Long

that is similar to the Shell command, but waits until the launched application has finished before continuing with the next instruction.

As an alternative, I use Inno setup as the installer; this let you decide to launch an application after install and wait until it finishes. You can find it at:

http://www.jrsoftware.org/


Hope this helps you.
Avatar of ianpugh

ASKER

That did it! Thanks for the help.