Shop

InstallShield
Advanced Installer
AdminStudio
more / weitere

InstallShield und AdminStudio Schulungen

weitere Infos

InstallShield MSI Tools and Samples

Building InstallShield Projects Using Team Foundation Server

This sample demonstrates building a C# windows application and then package it using InstallShield 2008 via TFS Team Build. The documentation can be found in Christopher Painter's blog.

ZIP TFS_Build_InstallShield_Example.zip   Written by Christopher Painter
File size: 91.801 bytes   Last update: 2007-09-08

Building InstallShield Projects From Windows Shell

Running this .reg file will add a "Build with InstallShield" command to the right click menu of InstallShield project files so you can build them with the click of the mouse. Before you run the .reg file please adjust the path to ISCmdBld.exe to match your development system. Written for InstallShield X but should work with other versions, too.

ZIP ISCmdBldX.zip   Written by Ricardo Stuven
File size: 594 bytes   Last update: 2004-12-09

Workaround for COM Extraction Problem with Data Execution Prevention

The COM Extraction in InstallShield Developer 7, DevStudio 9 and InstallShield 12 fails without an error message on Win2003 with a modern processor. The reason is that IsRegSpy.exe (in C:\Program Files\Common Files\InstallShield) tries to execute code in the data section. Modern processors with DEP (Data Execution Prevention) prevent this for security reasons because it is often used in buffer overrun attacks.

As a workaround, right click the My Computer icon, select Proeprties, System Properties, Advanced tab, click the "Settings" button. On the Performance Options dialog go to the Data Execution Prevention (DEP) tab and add an exception for IsRegSpy.exe, or switch the radio button to to "Turn on DEP for essential Windows programs and services only". Note that this (especially the second method) will reduce the protection level of your computer. This workaround was tested with InstallShield Developer 7, InstallShield DevStudio 9 and FLEXnet InstallShield 12.

Written by Andreas Lyner
Last update: 2006-09-04

 deutsch Deutsche Version dieses Artikels

Die COM-Extrahierung unter Win2003 Server auf Rechnern mit modernen Prozessoren funktioniert nicht mehr

Es gibt keine Fehlermeldung etc. die COM-Daten stehen einfach nicht mehr zur Verfügung. Der Grund ist, dass die Datei „C:\Programme\Gemeinsame Dateien\InstallShield\IsRegSpy.exe“ Code direkt im Speicher ausführt, welches auf modernen CPU’s von Win2003 Server unterbunden wird.

Lösung: Unter Arbeitsplatz - Eigenschaften Im Reiter "Erweitert" kann man den Dialog für die Systemleistung aufrufen. Dort findet man unter Datenausführungsverhinderung die betreffenden Einstellungen. Hier kann man die Datei "IsRegSpy.exe" als berechtigte Datei hinzufügen oder die Beschränkung für alle Programme außer für erforderliche Windows-Programme und Dienste aufheben. Allerdings wird dadurch, insbesondere durch die zweite Methode, der Schutz des Computers reduziert.

Getestet mit  InstallShield Developer 7, InstallShield DevStudio 9 und FLEXnet InstallShield 12.

Geschrieben von Andreas Lyner
Letzte Änderung: 2006-09-04

SQL Server 2005 Express Prerequisite

This is a prerequisite file that you can use with InstallShield (version 10 or above) to pre-install Microsoft SQL Server 2005 Express Edition. The .prq file has to be in the <ISProductFolder>\SetupPrerequisites directory. The SQLExpr.exe file has to be put in <ISProductFolder> \Redist\0409\i386 directory. This .prq uses the command line option of “/qb ADDLOCAL=ALL SECURITYMODE=SQL SAPWD="" SQLAUTOSTART=1” but you may change this.

The conditon defined in this prerequisite is for a defaut install. If you are using a named instance you should change the registry check to
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\?your instance name?\MSSQLServer\CurrentVersion
and leave the rest of the condition as is.

ZIP SQLExprPrerequisite.zip   Written by Qingsong Zhang
File size: 1115 bytes   Last update: 2006-01-07

Create Components Automatically

Component Author

This tool uses Installshield Automation Interface to create components, features etc. It can be used for authoring multiple projects at the same time. It was created specifically to deal with creating localization help merge module projects which are pretty similar to each other except for the link to the file and condition.

The tool does the following:

This tool requires .NET Framework 2.0 to run and should be able to work for different InstallShield versions.

ZIP CompAuthor2.zip   Written by Balasubramanian Kumaravelu
File size: 88.073 bytes   Last update: 2007-06-05

Previous Version

The older version of Component Author is still available. It creates a component for each file in a folder... the new one can be used to make changes like create components, features, enter project information, create based on a template for multiple ism's (like say 10 different language merge module ism) at the same time.

This tool uses Installshield X Automation Interface to create components for each file, in a folder. It allows you to create a component for each file using the file name, and set other options for a component like shared, condition, etc. It it also has a UI to show what feature and components are already there. The .NET Framework must be installed to use this program. The ZIP includes the utility and the other files needed to run it, just unzip them and run the utility.

ZIP CompAuthor.zip   Written by Balasubramanian Kumaravelu
File size: 250.570 bytes   Last update: 2004-10-05

Create Components from the Command Line

This is a command-line utility that simulates the Component Wizard (Best Practices option). It can be used in conjunction with the command-line build as an alternative to dynamic-file linking. It requires the IDE and should be placed in the InstallShield System folder. (It is possible to create a version that works with the Standalone Build but I would like to hold off on that work until I get feedback on the utility.)
Here is usage sample:
bprac c:\projects\othello.ism ProgramFiles [INSTALLDIR]Palm c:\palm

Version for InstallShield 11 and 11.5:
ZIP BPrac11.zip   Written by Art Middlekauff (feedback welcome)
File size: 62.405 bytes   Last update: 2006-01-31

Version for InstallShield Developer 8 (SP1 and SP2):
ZIP BPrac.zip   Written by Art Middlekauff (feedback welcome)
File size: 48.862 bytes   Last update: 2003-08-26

Display Summary and Billboards

Some of the more frequent problems with creating Standard project based setups in ISD is populating the SdStartCopy dialog and displaying billboards.
The problem some setup authors have with SdStartCopy is they don't know about lists and/or they don't know how to retrieve/save user information, install location, and setup types from previous dialogs.
The problems setup authors have with billboards is they think they can just drop billboards into the IDE and they display properly. The one thing they have to do is Enable(BACKGROUND) in their script to display billboards. Another problem with billboards is that sometimes the billboards are totally hidden behind the progress dialog, if the billboard is somehwat small, or, at the very least, partially hidden behind the progress dialog. The solution to this is to move the progress dialog to a corner.
This script solves both the problems discussed above. For the SdStartCopy problem, the script creates the list and populates it with the setup type (either ypical, Compact, or Custom), installation locaton (INSTALLDIR), and user information (Name, and Company). Translations don't exist internally for some of the strings, so some of the strings are hard coded.
For the billboard problem, the script initially determines if there are billboards in SUPPORTDIR by looking for the file bbrd1.bmp. If this file exists then billboards are meant to be displayed by the setup author. Then the script calls Enable(BACKGROUND) before the first dialog is displayed. Just before file transfer the script calls Enable(STATUS) to display the small progress indicator since the setup author most likely wants the billboard to be prominently displayed. Also, there is a call to PlaceWindow to place the status indicator in the lower left corner, again, since if the setup author has billoboards, then it assumed he wants the billboards to be prominently displayed--i.e. in the center of the screen.

ZIP SummaryBillboards.zip   Written by Kent Foyer
File size: 1.870 bytes   Last update: 2001-11-13

Get Object and ForEach in InstallScript

This example illustrates how you can simulate VB's GetObject and For Each...Next from InstallShield script. To do this, you need some help from an external DLL. Attached is a sample script and the support DLL (including source code).

This sample is intended for IS 6 and ISD 7. It will not work with IS 5.

ZIP GetObject.zip   Written by Mingbiao Fei
File size: 24.082 bytes   Last update: 2002-01-07

Migrating from InstallShield Express 2/3 to Developer

A lot of setup authors have a difficult time migrating from Express 2.x or 3.x to InstallShield Developer (Standard projects). One big issue is the script. What functions to call to display similar dialogs in Express and how to get similar functionality based on selections. These sample scripts attempt to clear some of this up. Use it to see what functions you can call to display similar dialogs as in Express 2.x or 3.x. The dialog functions in the script are called similar to the dialogs in Express and displayed in the same order in the ISD development environment. The sample script does not convert Dialog settings in an Express project into a Developer script that displays only the dialogs selected in Express. It is only a sample to help setup authors. Setup authors should run the script and step into the code through the debugger to see the logic. Also, setup authors should use help to find out more about the functions used.

Script that resembles InstallShield Express 2.x:

ZIP ISX2toISD.zip   Written by Kent Foyer
File size: 3.711 bytes   Last update: 2001-11-13

Script that resembles InstallShield Express 3.x:

ZIP ISX3toISD.zip   Written by Kent Foyer
File size: 3.659 bytes   Last update: 2001-11-13

Modify Setup.ini Inside Setup.exe or Update.exe

This is a command line tool that allows you to modify a setup.ini that is embedded in setup.exe or update.exe. This is useful when, for example, you want to modify [Startup] CmdLine in a compressed setup.exe, without rebuilding the project. Usage:
SETUPINI.EXE <path to setup.exe> <section> <key> <value>

Updated versions of this tool for newer InstallShield versions is available in Flexera Software Knowledge Base article Q107253.

For InstallShield 10.5:
ZIP SetupIniExe105.zip   Written by Art Middlekauff
File size: 27.085 bytes   Last update: 2005-05-12

For Developer 8.01 and above:
ZIP SetupIniExe.zip   Written by Art Middlekauff
File size: 26.830 bytes   Last update: 2003-05-09

For Developer 7.00 - 8.00:
ZIP SetupIniExe7.zip   Written by Art Middlekauff
File size: 26.369 bytes   Last update: 2003-07-03

IP Address Dialog for Standard Projects

Here is an example of IPAddress control. The API CreateWindowEx was used to create this control on a dialog. The setup.rul is short, and, hopeully, commented well enough that the code is easy to understand. In the zip file is a complete Developer Standard setup project without the built package. Also, inside the zip file is an .isd file. This file was exported from the Dialog editor. This file can be imported into an existing project. The .isd file is not necessary for a successful build of the
sample setup project.

ZIP SdIPAddressDlg.zip   Written by Kent Foyer
File size: 151.740 bytes   Last update: 2002-03-14

RTF License Dialog for Standard Projects

In Basic MSI projects the Scrollable Text control on the license dialog supports rich text format (RTF) files out of the box. However the SdLicense dialog in Standard projects doesn't. Here is a modification of the existing SdLicense dialog. The edit field on that dialog has been deleted. At initialization a rich edit control is created using CreateWindowEx and then populated it with the contents of an rtf file.

Fix: now displays properly on different resolutions

ZIP SdLicenseRtf.zip   Written by Kent Foyer
File size: 135.478 bytes   Last update: 2002-03-14

Setup Launcher to Suppress Maintenance Mode in IS6 and ISD7

If you run a setup created with InstallShield 6 or InstallShield Developer 7 a second time it automatically enters maintenance mode. This program makes sure that setup is always started in "first time" mode. To achieve this it searches the computer's registry for all the Uninstall keys.  It then searches the keys for a DisplayName value that matches InstallShield's String Table entry for PRODUCT_NAME.  If found it then reads the value of LogFile which gives the Drive and Path to where the Setup.ilg is found. It will then delete this file and launch InstallShield's setup program. You can rename SetupLauncher.exe to Setup.exe to always launch in "First Time" mode. (Of course this requires that you also rename InstallShield's setup.exe. Detailed instructions can be found in the Readme file.)

See also:

ZIP is67launcher.zip   Written by Dave Pehrson
File size: 121.840 bytes   Last update: 2001-11-13

Change Project GUIDs in InstallShield

This VB script changes all 3 msi GUIDs in a InstallShield project file. It accepts multiple *.ism's. It can be used to change 1, 2, or all GUIDs. Drag and drop supported. It's well documented.

The latest version of this script supports InstallShield 2009 and 2010.

ZIP GuidChange2.zip   Written by Aaron McLean
File size: 3.573 bytes   Last update: 2009-09-17

The previous version is still available below. It works with InstallShield Professional Windows Installer Edition (IPWI) 2.03, InstallShield Developer 7.x, InstallShield Developer 8.x, and the corresponding versions of AdminStudio.

ZIP GuidChange.zip   Written by Aaron McLean
File size: 1.927 bytes   Last update: 2002-11-29

InstallShield Developer Utility Collection

This toolbox uses the Developer automation interface to perform the following tasks:

Disabling maintenance mode is done by adding the entry NoAddRemove=Y to Setup.ini and by setting the conditions for actions PublishProduct, PublishFeatures, and RegisterProduct to 0. This way, it will prevent both the MSI stuff and the IS stuff from being placed in the machine where the setup is run. The setup can then be run like an IS 5.x setup.

This package replaces the LQMSIDowngrade.zip and LQMSIBuilder.zip packages

ZIP LQISDUtil.zip   Written by Luiz Quintela
File size: 7.007.815 bytes   Last update: 2002-03-17

 

 

 

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