Editors: Dean Zollman and Kevin Zollman, [dzollman, kzollman]@phys.ksu.edu
HOW TO DISTRIBUTE YOUR SOFTWARE OVER THE WEB
By N. Sanjay Rebello
M ANY SOFTWARE VENDORS DISTRIBUTE THEIR PROD-
UCTS TO POTENTIAL AND CURRENT CUSTOMERS OVER
THE WEB. IF YOU’D LIKE TO USE THE WEB TO DISSEMINATE YOUR
than having to download the software
multiple times, the user can download
once and then run the setup program lo-
cally for each installation. If you disallow
the user storage option, IFTW will in-
stall the software on a single computer
WINDOWS 9X OR NT SOFTWARE, THE COMMERCIAL PRODUCT and then delete the installation ﬁle.
IFTW also lets you create several
InstallFromTheWeb provides a con- steps and asks you to make choices and Web installations of the same product
venient way to do this. enter information. You begin by starting for placement at different Web sites.
Created by InstallShield Corp. (http:// a new project and entering information Users can choose which site to down-
www.installshield.com), IFTW lets users relevant to your product such as name, load from—for example, picking the one
download and install software by click- e-mail, copyright, version, and so on. Towith the lowest installation time. You
ing a few buttons. Based on our team’s ex- illustrate the tool, my colleagues and I can also digitally sign your installation if
perience, we believe it is one of the quick- created a Web installation for our Spec- you have software publishing credentials
est and most convenient Web-based in- troscopy Lab Suite program.1 Figure 1 from a certiﬁcate authority such as GTE
stallation packages for these platforms. shows the Project Information panel for (http://www.gte.com/cybertrust/index.
the software. The Wizard will import html) or Verisign (http://www.verisign.
Getting started this information into an HTML ﬁle and com). A certiﬁcate might satisfy users
To Web-enable an existing installa- display it to pros-
tion ﬁle (an .exe ﬁle that installs an ap- pective users be-
plication), you need access and write fore they down-
privileges to a server and a dedicated load the software.
Internet connection of 56 Kbps or Point the Wiz-
higher. (You must have already created ard to the folder
the installation file using other soft- containing the
ware.) The recipient of your software previously created
(the “user”) must have Windows 9x or installation files
NT, an Internet connection, and either that you want
plug-in technology such as Internet Ex- We b - e n a b l e d .
plorer or Netscape or another browser You have the op-
that supports ActiveX (http://msdn. tion of letting
microsoft.com/workshop/components/ users store the in-
activex/ctrlovw.asp). Users must down- stallation ﬁles in a
load and install the IFTW client. location of their
choice. This op-
Using the Design Time Wizard tion is useful if the
The Design Time Wizard provides user wants to in- Figure 1. Project Information panel of the Design Time Wiz-
a point-and-click authoring environ- stall the software ard. The Wizard imports information entered here by the dis-
ment for Web-enabling an installation. on more than one tributor into an HTML ﬁle and displays it to users before they
It guides you through a sequence of computer; rather download the software.
NOVEMBER/DECEMBER 1999 79
Figure 2. A part of page (accessed through Internet Ex-
the script of the plorer 4.0) of the sample Web installa-
Spectroscopy Lab tion we created for our Lab software
Suite Web-en- (http://www.phys.ksu.edu/perg/vqm/
abled installer programs/webinstalls/win95/sls/
page automati- SpectroscopyLabSuite.htm). To start
cally generated by a subsequent Web installation, users
the Design Time click the button at the top left. The soft-
Wizard. The com- ware prompts them with some simple
plete path of the questions and asks them to make
ﬁle on the server choices at each stage. For instance, if
must be speciﬁed the developer chooses to let users save
in the Value and the installer locally, they will be asked
Embed state- whether and where they want the in-
ments. staller saved. After they have answered
the necessary questions, the Web in-
stallation proceeds seamlessly.
Figure 3. The
The steps for creating and running a
Web-enabled installation are outlined
page as seen by an
in Table 1. Note that step 6, download-
ing, is only for those users who wish to
4.0 user. The but-
redistribute the application locally.
ton at the top left
appears only if the
Advantages and disadvantages of
end user has in-
IFTW is one of the most user-
friendly Web installation packages for
Windows 9X and NT systems. The in-
Clicking the but-
stallation process is several times faster
ton starts the Web
than downloading an archive from an
FTP site and installing it on a local
IFTW is compatible with other In-
who are wary of malicious intent while the Wizard. These ﬁles, along with the stallShield installers, such as Install-
Web-installing applications. exiting non-Web-enabled ﬁles, must be Shield 5.0 or InstallShield Express (we
IFTW lets you test your installation transferred to the appropriate location used the latter to create our installation
locally before you place it on a Web on the server. Your installation is now file before Web-enabling it). We have
server. After testing, you can ask IFTW completely Web-enabled. not used IFTW to Web-enable instal-
to build the Web installation. The Wiz- lations made with other vendors’ prod-
ard creates the Web page for the instal- Running a Web-enabled ucts, such as the popular tool Installer
lation using a built-in template that is installation Vise for Windows.
complete with links to the client and The ﬁrst time users access a Web in- IFTW is not cross-platform; you
your Web-enabled installation. Figure stallation created by IFTW, they will must use a different package for Mac-
2 shows the contents of the HTML ﬁle not have the client installed on their intosh and Unix systems. For example,
for the Web page. If you did not cor- system, so they will not see the button
rectly specify the full path of the instal- needed to launch an application. Inter- N. Sanjay Rebello is an assistant professor of
lation on your server, you can edit the net Explorer users will see a digital cer- physics at the Clarion Univer-
value and embed tags in the HTML tificate that, when clicked, downloads sity of Pennsylvania. His re-
file. You can also edit your organiza- the client. Netscape users must first search focuses on physics ed-
tion’s name, e-mail, or copyright infor- click the client link on InstallShield’s ucation and use of the Web
mation (Figure 1) at this stage. Web site (http://www.installshield. in teaching physics. Contact
The Wizard also builds other ﬁles com/client), download and save the him at the Physics Dept.,
needed for the Web installation; all the client, and then run the downloaded Clarion Univ. of Pennsylva-
ﬁles have the same name as the .ifw pro- ﬁle (Iftwcli.exe) to install it. nia, Clarion, PA 16214; firstname.lastname@example.org.
ject ﬁle that you chose earlier through Figure 3 shows the opening Web
80 COMPUTING IN SCIENCE & ENGINEERING
Other commercial products for creating Vbox Builder by Preview Systems (http://www.preview-
Web-based installations systems.com) is a royalty-free solution that lets you create se-
cure trial versions of your software without making source
WebDeploy by Wise Solutions (http://www.wisesolutions. code changes. Trials can be limited or unlimited, based on
com) creates dynamic Internet/intranet installations using In- uses, time, or dates, including a master expiration date. Vbox
stallMaster and InstallManager for Windows 3.1, Windows 95, lets you sell software directly through your Web site. The new-
and Windows NT. These installers do not require ActiveX con- est release offers a simpliﬁed ZipLock ESD (electronic security
trols or plug-ins. Other features include DLL support, self-regis- device) system for improved security.
tering DLLs, a “Setup-Capture” function that guides you DameWare Web Transport by DameWare Development
through creating installs, and more. (http://www.dameware.com) has a wizard-driven interface that
InstallConstruct by Paciﬁc Gold Coast Corp. (http://www. lets you package an application by quickly creating and digitally
pgcc.com) is a developer tool for creating installers, setup wiz- signing a 32-bit, secure, self-extracting ﬁle. You can also create a
ards, and uninstallers for Windows 3.1, 95, 98, or NT. Four types mini-setup procedure that can register components, display a
of packages can be created: self-extracting executables, cabinet text ﬁle, and create shortcut groups and icons. The setup proce-
ﬁles with an extractor, and cabinet ﬁles for HTML-based Internet dure includes uninstall functionality, and the newest release pro-
installations. You can customize the installation in various ways vides error messages.
and even have your setup program launch automatically. DirectUpdate Client by Idyle Software (http://www.direct-
Installer Vise is a powerful setup creation utility by Mindvi- update.com) provides a simple way for users to download
sion (http://www.mindvision.com). A unique feature of this soft- and install the latest versions of your products. DirectUpdate
ware is the ability to reverse-engineer another installer by taking lets you incorporate automatic software version checking and
a snapshot of a computer and running an installation program. update installation of any product. DirectUpdate can check
Installer Vise will detect all ﬁle and registry changes that were for a new version, download it, extract it, and install it. It can
made, then automatically create a new installer. Other new fea- be integrated through a DLL or with your own code. It uses a
tures include the ability to manage builds for different types of client that is installed on the user’s machine.
installs, improved support for handling DirectX installs, support NET-Install by 20/20 Software (http://www.twenty.com) is a
for FTP and HTTP installs, and built-in product serialization. software distribution and installation plug-in that combines
ActiveUpdate by Synopsis Software (http://www.synopsis- downloading, decompression, and installation into a single
software.com) automates much of the update design process, function. By clicking a link, you can download, decompress, and
allowing you to instantly distribute new software over the Inter- install software in one simple step. A publisher’s toolkit for creat-
net. The program generates a module that is distributed with an ing Net-Install installations is available.
application. This module checks the Internet for the latest version More information about these and other Web-based in-
of the software and then lets users download and install an up- stallers is available at http://www.softseek.com/Program-
date if one is available. Useful features include an online update ming/Installers_and_E_Commerce_Tools/index.html.
component and password protection.
Installer Vise for the Mac and Stuff-it downloaded through a Web browser. Nevertheless, IFTW is a useful tool,
Installer by Aladdin Systems are two After downloading, however, the user because it facilitates the Web-based
popular installers for the Macintosh. must run the installer locally. distribution of software.
Installer Vise lets distributors save the Another disadvantage of IFTW is
single-ﬁle installer as a binhex (.hqx) or that it uses ActiveX technology that is Reference
binary (.bin) ﬁle that can be placed on optimized for Internet Explorer 3.0 or 1. N.S. Rebello et al., Comput. Phys., Vol. 12,
the Web server and recognized and higher. Netscape requires a plug-in. 1998, pp. 28-33.
Table 1. Creating and running a Web-enabled installation.
Step Task Who Where
1 Create the non-Web-enabled installation Developer Developer’s local machine
2 Web-enable the installation using IFTW Developer Developer’s local machine
3 Transfer the installation to the server using FTP Developer FTP from local machine to Web server
4 Access the installation’s Web page using a Web browser User User’s local machine, connected to server
over the Internet
5 Run the Web installation User Local machine (buffer)
6 Download the installer (optional) User Local machine’s hard drive
NOVEMBER/DECEMBER 1999 81