Chief's AutoCalc IDE Help INDEX
Chief's Installer Pro IDE

 Chief's Installer Pro IDE

 © 1994-1997, Dr Abimbola A. Olowofoyeku

 HomePage: http://ourworld.compuserve.com/homepages/African_Chief/

The ChiefPro Integrated Development Environment ("the IDE") is the Chief's Installer Pro "wizard" for creating and managing installation projects. The IDE adopts a project-based approach (with the Chief's Installer Pro PROJECT MANAGER), the aim of which is to simplify and automate the process of generating INF files and installation disks for your programs. It also provides a facility for compiling Chief's Installer Pro INF and BATCH files into a binary format (to stop those prying eyes); and also a facility for converting Visual BASIC 3.0 Setup Wizard project files (.VBZ files) into Chief's Installer Pro projects. Note that VB 4.0's .VBZ files cannot be converted.

Provided that some very simple rules are followed, the IDE is easy to operate, and will take the tedium out of the development process. This IDE is entirely optional, and users can build their installation projects manually - through the use of a text editor. The IDE is just provided as a productivity tool for those who care to use it.

The IDE is invoked by running AUTOCALC.EXE. This program requires the presence of AUTODLL.EXE in the current directory, or in a directory in the "PATH". When AUTOCALC.EXE is executed, the user is presented with a number of menu items, which are discussed below.

CREATING PROJECTS

Chief Pro Project Manager

Compile files

Calculate Space Requirements

Pack Files

View Packed Archive

Package BDE Files

Convert VB Setup file

Split File

Create WINSTALL.BIN


Chief Pro Project Manager

The Chief's Installer Pro Project Manager ("PM") is the place where all the installation project development takes place. The PM is centered around a main dialog box which contains most of the activities that can be performed on projects. It is based heavily on DRAG and DROP from the File Manager. When you drag files from the file manager and drop onto the PM dialog, the files are processed and split up into component records. You can then browse the records, amend, delete, save, etc., and add new records by dragging new files from the file manager.

Before you can do anything in the PM, you have to open an existing project or create a new one. Project files have the extension .CPJ. These files are comma delimited data files (ASCII format), so they can be manipulated by most database programs. Each project file also has a header file (.HDR) in which certain details about the project are kept. This header file is also in ASCII format and so can freely be examined and edited.

You need to treat Chief's Installer Pro projects as you would treat any database. When you open a project, you need to close it before opening another one, or creating a new one, etc. Changes made to any record on-screen are not kept until and unless you first update that record (either by clicking on the "Update" button, or by clicking on "Next" or "Previous", if the "Auto Update" check box is checked).

There are a number of extra features in the Project Manager. You can specify a default directory for all your projects. To do this, you need to make an entry in AUTOCALC.INI; i.e., DEFAULT-PROJECT-DIR=<directory path>. This will cause AutoCalc to always change to the specified directory every time the Project Manager is started.

Also, you can supply the name of a project (.CPJ) file from the command line. To do this, you need to run the command: AUTOCALC /CPJ=<project file> - do not supply any extension for the project name - this will always be added automatically.

e.g, AUTOCALC /CPJ=C:\PROJECTS\BIN\PROJECT1

This will cause AutoCalc to try and open the specified project when it first starts. Note that this feature is very new - it seems to work well so far, but I won't bet my life on it. This was added in response to a request from a user. If it doesn't work well for you, you can just ignore it.

The Project Manager dialog contains many buttons, edit fields, and check boxes, the functions of which are detailed below.

Add Files

Jump to File

Delete

Update

Sort

Previous

Next

Auto Update

New

Open

Close

Save to file

File Manager

File Name

Target Directory

User Option #

Disk #

Icon Title

Group file

User Options

Split File

Configure

Extra

Additional Operations

OptionHelp Button

Make INF file

Build the Install Disks

Log the Build History

Compress the Files


CREATING PROJECTS

Projects are central to the Chief's Installer Pro Integrated Development Environment (IDE). Creating an installation package for your program should normally be centered around a ChiefPro project file. In order to create a ChiefPro project, you need to take the following steps;

1. Run the Chief's Installer Pro IDE (AUTOCALC.EXE).

2. Open the ChiefPro Project Manager, by selecting "File, ChiefPro Project Manager" from the main menu.

3. Click on the "New" button on the Project Manager dialog box

4. Fill in the details in the "New Project" dialog box - first, the default directory for your new project (where the ChiefPro Project Manager will keep all the supporting files for the project); then, the name of your project (maximum 8 characters, with no spaces, and no extension); then the name of your project's template INF file (the one that will be generated when you click on the "Make INF file" button). These particular details are the configuration information for your project.

The next few details relate to more specific information about the program that you are creating an installation package for - and these details will (among other things) be included in the template INF file that is generated when you click on the "Make INF file" button. These details are; your  program's title (the real name that you call your program - e.g. "Chief's Installer Pro v5.00"); the default target directory (where the program will be installed into - this can be changed at run-time by your users); and the default group name (the Program Manager group or Win95 folder that your program's icons will be created in - this can also be changed at run-time by your users).

5. After filling the details, click on the "OK" button. At this point, the project's header file is created (with the extension .HDR). This contains the information that was supplied when the project was created. The file is a standard ASCII file, and this can be viewed with any text editor. Also, at this point, the main ChiefPro support files are automatically added to your project. Please do NOT change any of the settings in respect of these files. The location of the ChiefPro support files is obtained from AUTOCALC.INI (in the [ChiefPro] section. If you move these files after you installed ChiefPro, you need to edit AUTOCALC.INI to point to the correct locations for the files. You can add more files (any file that you wish to be automatically added to every new project that you create) to this list by creating new entries for the files in the same format as the existing entries (i.e., "$#", followed by a number).

6. You will then be presented with a dialog box for configuring your project. This dialog can be accessed at any later time by clicking on the "Configure" button, when the project is open.

7. At this point, you should add your program's files to the project by dragging them from the File Manager (or other such program) and dropping them onto the Project Manager dialog box. As this is done, the project's data is updated.

8. You should save the project data every time you change  something significant, by clicking on the "Save to File" button).

9. If you want some of the files to be optionally installable, you should create your user options by clicking on the "User options" button, and then giving descriptions to each user option in the dialog that appears (the description given should be exactly as you want it to appear to your users at run-time). After supplying the descriptions, you should click on the "Save" button. You should specify the message to be displayed in respect of each user option (an explanation of what the option is about or what it does) by clicking on each option's "OptionHelp" button, and typing the required message into the edit box that will be presented to you.

10. If you have set your user options as described above, you then need to allocate each file that you wish to be optionally installable to a user option number. To do this, you need to browse through the list of files in your project (by clicking on the "Previous" or "Next" buttons), and changing the "User Option #" field for the file from ZERO to the user option number that you wish to assign the file to (e.g., 5, or 6, etc.). Remember to save your project regularly.

11. When you have completed all the details of your project, you should save the project file, and then click on the "Make INF file" button, to generate a template INF file for your project. If you want the installation disks to be built, you should check the relevant checkbox (next to the "Make INF file" button). If the files are to be compressed (using Microsoft's COMPRESS.EXE) you should check the relevant checkbox (this depends on having COMPRESS.EXE accessible in the "path"). If you want each build to be logged into a file, you should check the appropriate checkbox.

12. The template INF file will contain all your program's configuration information, and several commands. This will normally be a working INF file that you can use as your WINSTALL.INF file - but there are many things which will be left out, and which you will have to add manually - e.g., entries to INI files ($INI), or to the REGISTRY  ($REG-DATA), any fonts to be installed  ($FONT), any files to be unzipped  ($UNZIP) any file which has been split up and which is to be rebuilt  ($BUILD-FILE), any ChiefPro batch files to be executed ($BATCH-FILE), and other sundry commands that are not easy to configure automatically.

13. You can test your template INF file by  running INSTALL.EXE and supplying the name of INF file as a parameter (e.g., INSTALL C:\PROJECT1\PROJECT1.INF). Ideally, this should be done after the installation disks have been built.

14. As the last and final step, you should do any manual "tweakings" of your template INF file - e.g., by adding pointers to batch files, or other reserved words that the Project Manager will not insert. Do NOT generate another template INF file after you have tweaked the file, because the existing one will be overwritten automatically, and you will lose all your changes.


Add Files

This allows you to add new files (records) to the project. It will present you with a file dialog box from which you select the file or files that you wish to add to the project. The record fields will be automatically filled for you - and then you should amend the fields as desired.

You can select more than one file (just hold down the mouse button while scrolling down the list of files) - but please do not overdo this. It is best not to select more than 10 files at a time, especially since you may have to edit the other fields of the file records. Note that it is preferable to add new files by DRAG and DROP from the file manager. However, this facility is there if you want it.


Jump to File

This feature serves to facilitate navigation through the files/records of the project. It will present you with a list box containing all the files in your project, and their project record numbers. Double clicking on a filename will cause the project manager to jump to that file's record number, displaying all its fields and their values. You can then edit the fields at will.

This facility is to save you from clicking endlessly on the "Previous" and "Next" buttons in order to move around your project.


Delete

This deletes the currently displayed record from the project, and empties it's contents both on screen and in memory. The project file itself is not changed until you save the changes. Note that deleting a record when the Auto Update box is checked will lead to an error message when you click on NEXT or PREVIOUS. So, if you will be deleting records, you have to first uncheck the Auto Update check box.


Update

When you amend a record on screen, the change is not carried out unless you click on this button (note that deletions are carried out immediately), and if you click on NEXT or PREVIOUS without having updated the amendments, they amendments will be lost and you will have to make them again. If you are about to make many amendments, make sure that the Auto Update box is checked. This will save you losing any changes you make. The Auto Update box is checked by default every time the Project Manager is started.


Sort

This sorts the project records in memory. There are many ways of sorting and you will be presented with a dialog box which allows you to specify the preferred one. The sorted project is not written to the project file until you click on Save File.


Previous

Move to the previous record. If the Auto Update box is checked, then any changes to the current record will be updated in memory - and if any of the necessary edit fields is blank, you will get an error message.


Next

Move to the next record. If the Auto Update box is checked, then any changes to the current record will be updated in memory - and if any of the necessary edit fields is blank, you will get an error message.


Auto Update

Changes made to records on screen are not committed to memory unless the Update button is clicked manually. If you move to the next or previous record without updating, such changes are lost. This check box allows updates to be made automatically every time you click on NEXT or PREVIOUS. It is checked by default every time the Project Manager is started.


New

This allows you to create a new project. A dialog box will be presented which allows you to supply some details for the new project. You first specify the project's working directory, then the name for the project (note that this should just be a name - maximum 8 characters, without any extension). A project file (.CPJ) and a header file (.HDR) will be created for the project. You should also specify the name of the project's Template INF file. This is the file that will be created when the Make INF file button is clicked.

When you click OK, the details provided in the dialog will be written to the project header (.HDR) file, and a blank project (.CPJ) file will be created. Both of these files are ASCII files which you can edit with a text editor.

When a new project is created, AutoCalc will automatically add the main ChiefPro binaries into the project, so that they will be copied to your DISK #1 automatically. This facility is dependent on the ChiefPro files remaining in exactly the same place as they were installed to when you installed ChiefPro.  If you move any of the files to another place, please edit the entries in the [ChiefPro] section of the AUTOCALC.INI file to point to the correct locations. Please do NOT edit anything in that section other than the correct paths of the files.

After the "New Project" dialog is closed, you will be able to configure your project further, and then you are returned to the Project Manager. There will be no records in the project (except the main ChiefPro binaries), and you then need to open the file manager, and drag and drop your project's files from the file manager to the Project Manager dialog. As you do this, the file details are broken up as required, and the project's records increase. You can then manipulate the project, by editing, saving, adding new records (by drag and drop from file manager), etc.

Please note that files should only be added to the project by drag and drop from the file manager. Trying to add files manually by typing in the edit boxes is prone to error and is NOT supported at all.


Open

Open an existing project file. You will be presented with a list of Chief's Installer Pro project (.CPJ) files to select from. You need to close any open project before you can open a new one.


Close

Close an open project. If changes have been made, you will be prompted to save the changes.


Save to file

Any changes made to a project (either new, or old) will not be saved to the disk until you click on this button. It is a good idea to do this fairly regularly, in case something goes wrong.


File Manager

The Project Manager is designed to be operated in conjunction with the Windows file manager. Files should be added to a project ONLY by dragging from the file manager (or any  other shell that allows drag and drop) and dropping onto the Project Manager dialog. Clicking on this button tries to load the file manager (WINFILE.EXE).


File Name

When a file is dropped onto the Project Manager dialog, the full path name of the file is placed in the edit box titled File Name.


Target Directory

When a file is dropped onto the Project Manager dialog, the proposed target directory of the file is placed in the edit box titled Target Directory.  Most times, this will be a Chief's Installer Pro reserved word (e.g., files dragged from the Windows directory will be marked as going to $WINDIR, and files dragged from the project's working directory will be marked as going to $DEST, etc).


User Option #

When a file is dropped onto the Project Manager dialog, it is deemed that the file will be considered mandatory, so the it's User Option field is set to zero ("0"). If you want the file to fall under any of your user options, you need to change this field to the number of the relevant user option (and then make sure that the change is updated, either by clicking the Update button, or by making sure that the Auto Update box is checked).


Disk #

When a file is dropped onto the Project Manager dialog, it is deemed that the file will be on disk #1 of the installation set, and the Disk # field is set accordingly. If this is not the case, you need to change this field to reflect the relevant disk number, and then update.


Icon Title

When a file is dropped onto the Project Manager dialog, it is deemed that no icon will be created for the file, so this field is empty. If you want an icon to be created for the file, then you need to put the title of the icon in this field, and then update.


Group file

By default, all files are marked as going to the group file pointed to by the $GROUP reserved word. If this is not the case, then you need to change this field to reflect the name of the group that you want the file's icon to go into, and then update.


User Options

Clicking on this button presents you with a dialog box containing the default titles for the project's user options (maximum, 10). You can then change the title of any or all of the user options. You can also supply the message/text to be attached to each user option, by clicking on its "OptionHelp" button.


OptionHelp Button

When you click the "User Options" button to edit the options for a project, you will see beside each option a button labelled "OptionHelp#". Clicking on any such button will present you with an edit box into which you can type the option help/message for the relevant user option. If your installation uses the "WIZARD" interface, this is the message that will appear on the wizard dialog box for the option. If your installation does not use the wizard interface, this is the message that will appear if the user clicks on the help button (labelled "?") in respect of the option.

When you click on the "OK" button, the messages typed in the edit box for the option will be saved in the project option file (with the extension ".OPT"). This will be merged with your INF file when the INF file is being generated. The option file can be edited manually, with a text editor, but this is not recommended.


Configure

This option allows you to configure your project with greater particularity. Clicking on the "Configure" button will present 2 dialog boxes through which you can specify various options for your project's INF file. This ensures that manual fiddling with the final INF file is reduced to a minimum. Most of the optional features of ChiefPro (about 30) can be set through the "Configure" dialogs.

Note that you need to have opened a project before you can access this feature.


Additional Operations

This feature allows to to specify any additional operation that should be performed on a file during the installation. This has to be done on a file-by-file basis. In most cases, the checkbox defaults to "NIL" as the additional operation (meaning that nothing needs to be done to the file, except to install it normally). Please do NOT change the setting for any file unless you are sure of what you are doing.

Other options are

[a] $UNZIP - (to be applied only to ZIP archives) - click on this, if you want the file to be unzipped from the SOURCE DISK/DIRECTORY. This just means that, when the file is added to its $DISK line, it is added as: $DISK#=$UNZIP;<filename> ..., etc. You may need to edit the final INF file, to change the target directory for UNZIP operation, and/or any of the other parameters passed to it.

[b] $UNPAK - (to be applied only to ChiefPro packed archives) - click on this, if you want the file to be  unpacked from the SOURCE DISK/DIRECTORY. This just means that, when the file is added to its $DISK line, it is added as: $DISK#=$UNPAK;<filename> ..., etc. You may need to edit the final INF file, to change the target directory for UNPAK operation, and/or any of the other parameters passed to it.

[c] $BUILD-FILE - click on this, if you want the file to be processed by the $BUILD-FILE command. You may need to edit the final INF file, to change or any of the other parameters passed to the $BUILD-FILE command. This command can be used only for a LOG file created after a large file has been split (i.e., a .#0 file).


Extra

Although the Project Manager makes most of the necessary entries into the INF file, some users find that they need to manually add some commands to their INF files. This has hitherto involved editing the INF file after it has been generated by the Project Manager. However, this situation was not ideal, and the Project Manager now provides the opportunity to add commands manually, but as part of the project.

Clicking on the "Extra" button leads you to a dialog box with an edit box and a few buttons. The buttons represent some of the commands which you may wish to add manually, but you may add other commands by typing them in. Clicking on a button will present you with a list box of options for the desired command. Choose one of them, and a template for the reserved word is presented to you. You just need to enter the rest of the command as desired. Remember to save your work periodically.

The commands entered into the edit box are saved into an ascii file with the extension ".XTR". This file is automatically merged with your INF file when you create a new INF file, or build your install disks. You may also edit or create the file manually with a text editor.


Make INF file

This is the main goal of every project - to be able to automatically generate a template INF file for you. The things which are tedious to do are done for you in the template INF file (the project's name, with the extension .INF, or the file pointed to by the $INF-FILE entry in the project's .HDR file).

Clicking on this button generates the template INF file for the currently open project. This process might take a while, depending on the number of files in the project. When the template has been created, you are then expected to edit it for things like banner names, and other optional reserved words.

See also;

Build the Install Disks

Log the Build History

Compress the Files


Build the Install Disks

Checking this box will cause the Project Manager to try to build you installation disk set after creating the template INF file. You need to have your blanks disks ready if you are going to copy to floppy disks (or you can supply a directory on the hard disk as the target directory, when prompted for the target drive/directory).

With new projects created with v3.00 or higher, the Project Manager will, on creating your installation set, automatically place the main ChiefPro support files on your DISK #1. Some of the ChiefPro files will simply be copied to the disk #1 (e.g., SETUP.EXE, SETUPINF.INF). Others will be compressed and archived into a ChiefPro archive called WINSTALL.BIN. SETUP.EXE will automatically search for this archive and extract the files from it to the TEMP directory, as part of the process of preparing the ChiefPro support files.

The files which will be included in this archive are those marked as "$CHIEF", and assigned to user option "-1" in your project. These files are the same as those listed in the [ChiefPro] section of your AUTOCALC.INI file (v3.00 and higher). They are automatically added to every new project created from v3.00 onwards.

See also;

Make INF file

Log the Build History

Compress the Files


Log the Build History

The Project Manager can produce a log of every attempt to build the install disks. This log is saved in an ascii file (the project's name, with the extension .LOG). The date and time of each build, and the details of the attempts to copy each file in the project, (including whether the files were just copied or were compressed) are logged. If you want a build to be logged, then you need to check this check box. The log file can easily become very big, so it is a good idea to delete it occasionally.

See also;

Make INF file

Build the Install Disks

Compress the Files


Compress the Files

By default, when the install disks are being built, the files are simply copied to the target drive/directory. If you check this check box, then the files will be compressed with Microsoft's COMPRESS.EXE. Note that if COMPRESS.EXE is not found in the "PATH", then the attempt to compress the files will fail.

See also;

Make INF file

Build the Install Disks

Log the Build History


Pack Files

This feature allows you access to ChiefPro's built-in compression engine, for the purpose of compressing files into an archive. The packed archive will have the default extension .PKK. Such packed archives can be extracted with the $UNPAK reserved word, or with the UNPAK batch command (see CHIEF.HLP for details).

You need to specify the full paths of the files to be added to the archive (e.g., C:\EXES\*.EXE, or whatever) in the "FileSpec ..." edit box. However, you can also specify a LIST file (with the extension .LST) for this purpose. The LIST file can be selected via a file dialog box, if you click on the "List File ..." button. A LIST file is a plain ASCII file, which contains a list of files to be archived. Each line in a LIST file should contain the full path to a filename (e.g., C:\PROGRAM1\PROGRAM1.DLL). Any line beginning with a hash (i.e., "#") is treated as a comment and is ignored. If any file in the list is not found, then it is ignored, and the archiving process will continue with the files that are actually found. You can VIEW the contents of a packed archive, with another menu option (see below).

The archiving feature can optionally recurse into subdirectories under the specified source directory to add files which match the specifications. To enable this feature, make sure that the checkbox labelled "Recurse through Directory Tree" is selected - otherwise, the default behaviour is not to recurse. Note that the this feature is not available where you use a LIST file.

See also;

View Packed Archive

Package BDE Files


View Packed Archive

This feature allows you to take a look inside a ChiefPro packed archive. You can select the archive to be viewed from a file dialog.

See also;

Pack Files

Package BDE Files


Package BDE Files

ChiefPro features limited support for the installation of the Borland Database Engine (BDE), through the use of ChiefPro batch files. This menu option allows you to package your BDE files into a single ChiefPro packed archive (for the 16-bit BDE) or two packed archives (for the 32-bit BDE).

To use this feature, you need to supply the location of your BDE files, the directory into which you want the packed archives to be created, and whether your BDE installation is 16-bit or 32-bit. You need to package your BDE files only ONCE. After that you can just add the packed file to any number of products that you are installing with ChiefPro.

Yuor BDE files can be installed as part of any installation routine, by using ChiefPro batch file commands. Sample batch files are supplied (see BDE-16.CHF and BDE-32.CHF in your samples directory).

See also;

Pack Files

View Packed Archive


Compile File

Chief's Installer Pro obtains all its configuration information from a file called WINSTALL.INF. This file is an ASCII file, which can readily be browed and edited with simple text editors. While this makes it easy for you to edit and maintain, it also makes it easy for hackers to tamper with your install script. By the same token, BATCH files written to work with Chief's Installer Pro and in the same ASCII format, and subject to the same problems.

In order to combat these problems, Chief's Installer Pro comes with a command line compiler for INF and BATCH and LANGUAGE (.LNG) files, called COMPILE.EXE. The same functionality can be obtained by selecting the "Compile File ..." menu option from the AutoCalc main window. The compiler converts the input files into a binary format (different for INF and BATCH files) thereby protecting the files. Chief's Installer Pro can cope with either compiled files or ASCII files, so it does not matter whether or not your INF, BATCH and LANGUAGE files are compiled.

When you select the "Compile File ..." menu option, a dialog box will appear in which you are prompted for the names of the source and output files. The output file will contain the compiled version of the source file. If the source file is a Chief's Installer Pro batch file, you need to check the checkbox that reads "Source File is a Chief's Installer Pro Batch File" BEFORE compiling the file. Trying to compile an INF or LANGUAGE file as a batch file, or vice versa, will certainly lead to errors in running the installer.


Calculate Space Requirements

This facility is provided for backward compatibility with older versions of AutoCalc and Chief's Installer Pro. It does what simply running AutoCalc with no parameters did under version 1.x of Chief's Installer Pro. It's functionality has been replaced since version 2.0 with the functions in the Project Manager. It is not recommended to use this feature any more. Please use the Project Manager instead.

The purpose of this facility is to calculate the space requirements of your program, before you ship the disks. It takes its input (as AutoCalc did under Chief's Installer Pro, version 1.x) from WINSTALL.INF and AUTOCALC.INI. Note that it does not open or read any project file at all. It is therefore best used when the WINSTALL.INF file has been finalised, and the program's files have been put in places where AutoCalc can find them (see below for more details).

Specifically, the AutoCalc Space Calculator does the following;

[a] read the $DISK lines in your WINSTALL.INF file

[b] read the $WINDIR lines in your WINSTALL.INF file

[c] read the $SYSDIR lines in your WINSTALL.INF file

[d] read the $TEMPDIR lines in your WINSTALL.INF file

[e] read the $OPTIONAL lines in your WINSTALL.INF file

[f] check for all the files on those lines

[g] obtain the sizes of the files (if a file is compressed, it gets the size of the expanded image of the file)

[h] total the sizes of all the files in the installation set

[i] total the sizes of the files that make up each user option

[j] total the sizes of the files that go into the Windows directory

[k] total the sizes of the files that go into the Windows SYSTEM directory

[l] total the sizes of the files that go into the TEMP directory (for $SWAP-SPACE)

[m] add 0.5% to each of the figures, as a safety margin (because of disk cluster sizes)

[n] display the results on the screen

[o] write the result into WINSTALL.INF

Please try to ensure that the directory in which the files are only contains files that will go on your installation disks - otherwise, the calculations might be wrong. Also, try to be a little specific in your use of wildcards on $DISK lines (especially if your installation set consists of more than 1 disk) - e.g., do please NOT do something like;

$DISK1=*.*

$DISK2=*.*

$DISK3=*.??_

$DISK4=*.??_

This will only confuse the program, and the same files will be processed over and over again. One common cause of inaccurate space calculations by AUTOCALC is the indiscriminate use of wildcard characters. Please NOTE this point.

When AutoCalc has finished calculating the space requirements (the process might take some time) the results are written into WINSTALL.INF. Please note that you should do this BEFORE compiling the WINSTALL.INF file. Note that this facility may be removed in future versions, in favour of the Project Manager.

Locations of files for space calculations;

In respect of matters described above, AutoCalc, when calculating space requirements, defaults to looking for all the files in the CURRENT directory (i.e., the directory being processed). If it does not find the files in that directory, then it will look for them in certain sub-directories under the directory tree of the current directory, or in directories pointed to in the AUTOCALC.INI file (the latter only applies to files going into $WINDIR, $SYSDIR, and $TEMPDIR - please see the help index of CHIEF.HLP for what these things mean).

The supported directories under the directory tree of the current working directory are:

1. Files going to the Windows directory: $WINDIR

OR the directory pointed to by the $WINDIR= setting in AUTOCALC.INI

e.g.,

[a]. C:\MYPROGRAM\$WINDIR

[b]. $WINDIR=xxxx in AUTOCALC.INI

2. Files going to the Windows SYSTEM directory: $SYSDIR

OR the directory pointed to by the $SYSDIR= setting in AUTOCALC.INI

e.g.,

[a] C:\MYPROGRAM\$SYSDIR

[b]. $SYSDIR=xxxx in AUTOCALC.INI

3. Files going to the TEMP directory: $TEMPDIR

OR the directory pointed to by the $TEMPDIR= setting in AUTOCALC.INI

e.g.,

[a] C:\MYPROGRAM\$TEMPDIR

[b]. $TEMPDIR=xxxx in AUTOCALC.INI

4. Files for each $DISK# line: $DISK#

OR the directory pointed to by the $DISK#= setting in AUTOCALC.INI

e.g.,

[a] C:\MYPROGRAM\$DISK1

[b]. $DISK2=xxxx in AUTOCALC.INI

NOTES:

1. AutoCalc will first look in the directory tree of the source directory for the relevant sub-directory. If the sub-directory does not exist there, then AutoCalc will look in the AUTOCALC.INI file for any relevant entry. If this is not found, or if it points to an invalid directory, then AutoCalc will look in the source directory.

2. AutoCalc sometimes gives you a negative value for $SPACE (or any of the others). In such cases, simply replace the negative value with a ZER0.

3. Sometimes the space calculations produced by AutoCalc are not accurate. There are many causes for wrong calculations by AUTOCALC. The primary cause is indiscriminate use of wildcards in your INF file. Other causes, which might be related to the one already mentioned are:

[a] Mixing wildcards and full file names on $DISK, $SYSDIR, $WINDIR, $TEMPDIR, and $OPTIONAL lines - this might result in some files being processed more than once.

[b] Having files in the directories being processed by AUTOCALC which files are not going to be on your distribution disks.

The bottom line is this - if you are going to use wildcards on your $DISK and/or $OPTIONAL lines, you need to think very carefully about what you are doing. It is up to you to arrange your lines so that no file is liable to be processed twice - this is because AUTOCALC processes your INF file exactly as it finds it.

In my view, it advisable to AVOID mixing wildcards and full file names on $OPTIONAL lines. Either use ONLY wildcards, or ONLY full file names. But if you are NOT relying on AutoCalc for your space calculations, then you can freely mix wildcards and full file names.


Convert VB Setup file

This presents a facility for Visual BASIC programmers who have been using the Setup Wizard to create their installation routines. The facility takes a Visual BASIC 3.0 Setup Wizard .VBZ file as its input, and converts this into a Chief's Installer Pro project file. You can then manipulate the new project file with the Project Manager as normal. Note that VB 4.0's .VBZ files cannot be converted. This feature is obsolescent.

By default, the new Chief's Installer Pro project is simply called "CONVERT". You need to rename it to something more meaningful before performing the conversion. Note that you should not give any file extension for the name of the converted project. Any project name supplied as the Chief's Installer Pro project will automatically have the extension .CPJ for the project, .HDR for the project's header file, and .INF for the project's template INF file.

Note that this is only a facility to simplify the process of moving from Setup Wizard. Most things (e.g., file lists) are converted, but some things may be missed out. You might still need to edit the new project afterwards.


Split File

Sometimes users have huge files that are too big to fit onto one floppy disk, even after compression. Chief Pro offers support for splitting such huge files into smaller parts (maximum size to be specified by you). These smaller parts can then be put onto floppies (compressed or otherwise) and installed in the ordinary way. After they have been installed, the small parts can then be used to rebuild the file again - either by using the command line utility SPLIT.EXE, or, preferably, by using the $BUILD-FILE or $BUILD-FILE-EX reserved words.

Huge files can be split into smaller parts by using SPLIT.EXE or by an operation from the Chief Pro IDE (select "Split File"). It is easier to accomplish from the IDE - but the command line utility SPLIT.EXE is supplied for those who prefer to use it that way, or who might want to run a batch job on it. If you want to split a file from the IDE, you will be presented with a dialog box (when you select the "Split File" from menu item). This dialog has two edit fields. The first should contain the name of the file you want to split (you can browse for the file). The second contains a figure for the maximum size of each smaller part. This is set to 1280kb by default (1.2mb) but you may increase or decrease it. The file will then be split into numbered smaller chunks, in the same directory.

When a file has been split, a LOG file will be automatically created (typically with the extension .~#0). This log file is needed to rebuild the file, and MUST be installed along with the small parts, and into the same directory. Also, you need to add the full size of the whole file (or at least an approximation of it) to your $SPACE statement - otherwise the percent meter will be inaccurate.

TIPS: to use this successfully, all you need is a few steps [a] split the file with SPLIT.EXE or from the IDE [b] copy all the small parts to your installation disks [c] copy the LOG file to your installation disks [d] add the names of all the small parts, and of the LOG file to your $DISK# lines [e] make a $BUILD-FILE statement pointing to the LOG file, and specifying the output directory. That's all!

For greater ease of use, IT IS RECOMMENDED that the the SPLIT FILE function should be used in the Project Manager, with an open project, rather than the SPLIT FILE function from the main menu, or from the command line tool (SPLIT.EXE). This will ensure that the Project Manager makes the necessary entries for you with respect to the operations to be carried out on the file that has been split. This includes making the necessary $BUILD-FILE entries in the INF file.

If you use the function from the main menu, or if you use SPLIT.EXE, then you will have to make all INF file entries manually.

To see the syntax for SPLIT.EXE, just run it without any parameter.


Create WINSTALL.BIN

With new projects created with v3.00 or higher, the Project Manager will, on creating your installation set, automatically place the main ChiefPro support files on your DISK #1. Some of the ChiefPro files will simply be copied to the disk #1 (e.g., SETUP.EXE, SETUPINF.INF). Others will be compressed and archived into a ChiefPro archive called WINSTALL.BIN. SETUP.EXE will automatically search for this archive and extract the files from it to the TEMP directory, as part of the process of preparing the ChiefPro support files.

Normally, the above process takes place only when you are building your install disks. However, due to specific requests, this process can now be carried out manually, by selecting this menu item. The IDE will then create a WINSTALL.BIN file into a directory of your choice. The files to be placed in this BIN file are retrieved from a list file called INSTBIN.LST, which is created in your UTILS directory at install time (you can edit the file if you want, to add or to remove files). You will then need to manually copy the WINSTALL.BIN file to your disk #1.

Please note that this manual creation feature is provided as a result of requests. If you use the feature, you are on your own! It is better to use the Project Manager.