InstallShield Tips and Techniques

June 21, 2007

Path Variables and Project Organization

Filed under: Reference Materials — shieldmaster @ 9:23 pm

Did you ever open a project and find that various components (binary files, .RUL, etc. ) were missing? 

Typically you will discover that the last person who maintained the InstallShield project did not take care of organizing the project carefully – letting components be littered accross the network. 

For example, here is a image of a complex project with files being pulled from who knows where…


With files being pulled from such a myriad of locations, it is bound to lose some over time. 

 Solution – Organize and use Path Variables correctly.  Let’s first discuss how best to organize your project files. 

 Project Files Organization

 Look at how I organize a typical project


Under the Project directory will be the InstallShield .ISM project, with all supporting files found within the store directory. 

If you have full control of the source staging, then stash it under the Source directory.  Typically the source will be staged in a specific directory after a build process.   Ensure all components are placed within the Source Management repository for ensuring the ability to rebuild the project for future upgrades.

But what happens if the next person places the project structure on a different drive? Or a different directory structure?  If you utilize Path Variables correctly, then you can shift the project around and never encounter a problem when you go to rebuild the project.

Path Variables 

When you look in the InstallShield project at the Path Variables panel, notice that you have a constant reference point.  That is where the project .ISM resides – which is referenced by the Path Variable <ISProjectFolder>.  No matter where the project structure is placed (on a network or buried in sub-directories), if you set your Path variables up to have a reference to the ISProjectFolder then any file can be found.

The easiest method to determine this is to count the directory up from the project .ISM file.  For example, for the bitmaps used as replacements for the basic interior/exterior dialogs, they exist in the sub-directory “..\TestProject\packages\store\Bitmaps_Icons\Dialog Bitmaps”.  To reference them I will need to go up one directory from the .ISM, and then drive down into the “store” sub-directory until we get to the dialogs.   Bottom line, the path reference would be:

<ISProjectFolder>..\store\Bitmaps_Icons\Dialog Bitmaps

Now look how the other path variables can be resolved to reference everything else in the projct structure:


Well, I hope this helps you to organize your project files so that when you get to pass on a project for maintenance, the next guy can find everything – right where you left it.

InstallShield Tips and Techniques
InstallShield Consulting
InstallShield Tips and Techniques
InstallShield Consulting



  1. […] InstallShield Tips and Techniques A Weblog to share tips and techniques for working with InstallShield’s setup authoring engine. « Path Variables and Project Organization […]

    Pingback by Dress up the dialogs with customized bitmaps « InstallShield Tips and Techniques — June 26, 2007 @ 12:05 am

  2. It helps me to create dynamic link. Thank you very much.
    Create setup data folder near ISM file and drag N drop files from there.

    Comment by Hitesh — June 29, 2012 @ 5:51 am

RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Blog at

%d bloggers like this: