Shop

InstallShield
Advanced Installer
AdminStudio
more / weitere

InstallShield und AdminStudio Schulungen

weitere Infos

InstallShield Pro Development: Components and File Groups

Note regarding InstallShield 6: Unless otherwise stated the tips and tricks on this page have been written for InstallShield 5, and not all of them will work with InstallShield 6. Some may even damage your project files, so remember to make backups first.

Convert File Groups From Static to Dynamic

If you have to convert a lot of IS5.5 file groups from static to dynamic link type, this utility can automate the process.

ZIP DynamicFileGroups.zip  Written by Carl Bennett
File size: 866.136 bytes   Last update: 2000-02-17

Create and Update File Groups

Note: These tools have been created for InstallShield 5.0 and 5.1. They have not been tested with later versions. IS 5.5 comes with dynamic file group linking features built-in, so these tools may be obsolete and may damage IS5.5 FGL files.

Here is a stand-alone FGL processor. What it does is to process a data file to create the FGLs that InstallShield uses. This allows you to specify groups of files, pick up new directory contents, and use UNC names - without having to manually drag and drop into IS5. It makes script maintenance easier. Just rerun FGLupadte, open the script and make the media.
Note that this is a 32 bit EXE compiled from an AWK script. No shell, interpreter or other tools required!

ZIP fglupdte.zip (108.675 Bytes)   Provided by Burton M. Strauss III

Here is another file group tool that may be of interest for you. It is a bit more "Windows style" than the above, so it may feel more familiar for some of us.

PFTW UpdateFileGroups.exe (680.882 Bytes)    Provided by Bjørn Sundby

The first FGL tool that appeared on InstallSite is still available. However, it requires some sort of Shell and awk tool (like MKS).

ZIP genfilegroups.zip (1.388 Bytes)   Provided by Jimmy Choi

Read also Bill Foust's article on Using Realtive Paths in File Groups.

Multiple Wild Cards in Dynamic File Groups

InstallShield 5.5 introduced a new feature called "Dynamic File Links". A dynamic link file group will include all files in the specified directory into the setup. You can also set a wild card pattern so that only matching files will be included, e.g. "*.ocx". However, you cannot specify more than one wild card expression for one file group, so something like "*.dll, *.ocx" is impossible (you can enter such an expression, but it doesn't work). The official solution is to create a new file group for each wild card. However, there is an unsupported hack to add multiple wild cards to one file group:

  1. Close the project in the InstallShield IDE.
  2. Open the .fgl file for the file group you want to modify. It is located under C:\My Installations\[Project Name]\File groups\[File Group Name].fgl
  3. In the [Dynamic] section you'll find an entry like this:
    WILDCARD0=*.ocx
  4. Add an new entry for the second wild card pattern, by incrementing the suffix number:
    WILDCARD1=*.dll
  5. Repeat step 4 as desired. Remember to increment the numer so that all entries will be unique.

Note that this is an unsupported hack. Use on your own risk, and make backups frequently.

Written by Stefan Krueger

Set IncludeInBuild Flag for Components

Do you need to build different "flavors" of your setup, for instance Debug and Release or Update and Full? InstallShield has a useful feature for this kind of task: the "Include in Build" flag for components. But until today, you had to set these flags manually in the IDE. Now here is a tool that can set the Include in Build flag from command line. It is easy to use, and a sample build.bat file is included in the package. Also included is the Visual C source code.

Update: Added support for InstallShield 6

ZIP IncludeInBuild.zip (26.360 Bytes)    Written by Elihu Rozen, updated by Richard Pointon
File size: 27.483 bytes   Last update: 3001-04-03

Using Relative Paths in File Groups

First off, you CAN make Is5.1 work with file groups that have relative paths. There are a few caveats though.

Because you can't make the filegroups with relative paths in the IDE, you have to either create the FGL file by hand or open it outside of the IDE and edit the drive letters away. This isn't too big of a deal unless you have a bajillion files. You can even still do media builds in the IDE after this as long as the project and all of the files it needs is located on the same drive as you have specified by the "Start In" field of the shortcut. I found this out when I moved my project to my E: drive and my shortcut was still setup to start in D:. The result was that several of my files stopped appearing in my builds from the IDE. The IDE was looking for them on the D: drive even though I opened a project on the E: drive.

If you are going to be using ISBUILD to do your media builds you have another set of problems. I found that I HAD to use the -b option of ISBUILD. I think this has more to do with the fact that I'm building my project on E: and not where my project location was defined to which is on D:. If you use -b you MUST specify the path as an absolute path or you will get the dreaded Error -7126. This error can mean a LOT of things besides what the error message says, which is "Not enough disk space.". I was kinda lucky in this respect because our build environment already specifies an environment variable for the build drive letter so I use that variable in the -b parameter.

One other thing that bit me and I had to work around is that PVCS (our version control software) cannot handle a directory name with parenthesis in it. Several of the languages which can be defined have this attribute, probably the most common is "0c0c-French (Canadian)" and "040c-French (Standard)" I had to store these files in dirs names differently and then rename the dir in my makefile before doing the build. This made another problem crop up. I typoed the dir name and then when I tried to load the project in the IDE it came back with error -11101 "Unable to load string table data". followed by a 2nd error after this one, error -11157 "E:\products\ir_server\string tables\default.shl" saying to try again and if it fails to call tech support.

Written by Bill Foust

 

 

 

English News Discussions Windows Installer Related Tools More Help InstallScript About InstallSite Shop Site Search
deutsch Neuigkeiten Diskussionsgruppen Windows Installer MSI FAQ Artikel     Shop Suche

Copyright © by InstallSite Stefan Krueger. All rights reserved. Legal information.
Impressum/Imprint Datenschutzerklärung/Privacy Policy
By using this site you agree to the license agreement. Webmaster contact