dB2K and InstallShield Express
by Jean-Pierre Martel, editor of the dBulletin

WHEN dBASE Inc. officially announced the release of Visual dBASE 7.5, we learned that InstallShield had decided to discontinue the custom versions of InstallShield Express (ISE) bundled with Visual dBASE 7.  However, even if there are many alternatives to deploy dB2K, some of us might not want to learn a new program when we are used to ISE.

If you own a copy of ISE and try to use it to deploy an application, you will see that ISE is not configured to install the dB2K runtime, nor to add the keys in Windows' Registry that would allow your application to run under dB2K.  How can ISE be updated to install dB2K? This will be done in two steps.

This methodology is valid if you are using ISE version 2.01 only.  To know which version you have, run InstallShield, and look under the Help menu/About…).  Version 2.01 is the one that came with VdB 7.01.  If you are using the version that came with VdB 7.0, the following instructions will not work.

Moreover, if you moved directly from VdB 7.01 to dB2K (without installing VdB 7.5), you will have to update your copy of ISE with a patch that will allow you to use the version of the Borland Database Engine (BDE) that came with dB2K.  Follow the instructions Michael Rotteck gave for the users of the English or the German version of Visual dBASE.  If you did upgrade to VdB 7.5 before dB2K, I am assuming that you already followed Michael Rotteck's instructions and updated your copy of ISE.  If you didn't, do it as soon as possible:  otherwise you will have problems with BDE 5.x (Michael Rotteck, personal e-mail).

Swdepend.ini

The first step is simple:  we just have to edit the ASCII file called Swdepend.ini, found in the folder where ISE was installed.  ISE uses the information from this file to create the specific .iwz for each project setup.  Once the changes are made in Swdepend.ini, these changes are reflected in all the .iwz made by ISE.

Swdepend.ini keeps track of the files that are used by the dBASE runtime and the Borland Database Engine (among other things).  To deploy the dB2K runtime instead of the VdB 7.x runtime, only the section called [VdBase Support] have to be changed from:
 
 
[VdBase Support]
Src=HKEY_LOCAL_MACHINE\Software\dBASE\Visual dBase\7.5\RootDir
SrcSub=Bin
Uses1=VDB7RUN.EXE
Uses2=VDB70009.DLL
Uses3=RESOURCE.DLL
Uses4=CTL3D32 FILE
 

to:
 
 
[VdBase Support]
Src=HKEY_LOCAL_MACHINE\Software\dBASE\dB2K\0.1\RootDir
SrcSub=Bin
Uses1=db2krun.exe
Uses2=db2kr_en.dll
Uses3=Resource.dll
Uses4=Ctl3d32 file
 

Please note that the line “Uses2=db2kr_en.dll” is for the users of the English version of dB2K. You will have to change this line to:
  Uses2=db2kr_de.dll if you are using the German version
  Uses2=db2kr_es.dll if you are using the Spanish (Español) version
  Uses2=db2kr_fr.dll if you are using the French version
  Uses2=db2kr_it.dll if you are using the Italian version
  Uses2=db2kr_ja.dll if you are using the Japanese version

To make your job easier, if you don't want to make these changes yourself, just download the new version of Swdepend.ini from the link at the end of this article.

For these changes to take effect, the Visual dBASE runtime checkbox (in the section called General Options of ISE) have to be first unchecked, then checked again before you create your first deployment script under dB2K.

Installation script

Note:  When this article was written, it was still not clear yet if the Registry had to be modified for the Runtime.  Since the changes I am suggesting to you will not do any harm, better be safe than sorry…

For the second step, open the “project” associated with one of your applications in dB2K (from the menu: File/Open project…).  Then open the deployment script (from the menu:  Build/Create Install Program…).

From the Setup chechlist (the yellow pad checklist under ISE), click the Keys button under the section “Make Registry changes”.  Beside the key “HKEY_LOCAL_MACHINE”, there is a + sign:  click on it, then the + sign beside “Software” and the one beside “dBASE”.  Highlight the key “Visual dBASE” and click the “Modify Key…” pushbutton.  In the “Registry Modify Key” dialog box, change the key value from “Visual dBASE” to “dB2K” and the OK pushbutton in that dialog box.

Back in the “Make Registry Changes” dialog box, the key “Visual dBASE” is now renamed “dB2K”.  Click the + sign beside it to reveal the 7.5 sub-key.  Click again the “Modify Key…” pushbutton and rename that sub-key from “7.5” to “0.1”.  Click the OK pushbutton to accept these changes.

The second step, once completed, will set the new default values for any installation script, whatever your are creating a new installation script or opening an existing one.

To download the new version of Swdepend.ini, click here
(it is a 2Kb zipped file)


The author would like to thank Michael Rotteck, Ken Mayer and Fabian Cevallos (my proof-reader) for their suggestions and the improvements they brought to this text.