Consider Eliminating Installation

The installation process is best regarded as a necessary evil. But is it really always necessary? Programs that require a CD-ROM to run (such as multimedia programs, games, kids programs, demos) are interesting because they are the only programs that require the user to insert the distribution media to run them. In this case, it's possible to have AutoPlay launch the program and to have the program install itself and then uninstall itself when the user quits.

I have several Windows computers and one Apple Macintosh. My two-year-old son Philippe loves to play with a computer whenever his father is working, so I set up the Macintosh for him to use when the other computers aren't available. This is one situation where having a single-button mouse is a good idea. The children's CD-ROMs we have are all multiplatform. I've noticed that while most of the Windows versions require installation, none of the Mac versions do. You just pop in the CD-ROM, double-click the program icon, and go. You don't know how cool this is until you've tried it.

Is it possible for a Windows program to eliminate installation? Well, it depends. Browser-based, thin-client programs routinely avoid the need for installation. There are several recent developments that make it possible to eliminate installation:

  • Improved CD-ROM performance Currently, the best CD-ROM drives run at 40x and even the cheapest drives run at 20x. There is no longer a need to copy read-only files (such as executables and data files) to the hard disk to improve performance.
  • The new Visual C++ /DELAYLOAD linker switch This linker switch, which delays loading a DLL until it is called, means that programs that depend upon DLLs can load, determine which DLLs need to be installed, install them, and then run. The /DELAYLOAD switch also allows programs to unload a DLL when it is no longer needed, so a program could also uninstall its DLLs before quitting.

On the other hand, there is at least one recent development that makes eliminating installation more difficult:

  • COM Since COM components must be registered, the idea of registering components that are on removable media isn't especially attractive.

To summarize an installation-free process: After the user inserts a CD-ROM, AutoPlay could launch the program immediately. The program could have an installation function that could install and register any components that are needed before running the main program. Temporary files can be written to the Temp folder, as usual. When the user quits the program, the reverse process could be performed to remove the program. The only trace remaining would be any user settings in the registry. Since this whole process is temporary, there is no need to ask the user where to copy the files, what Start menu name to use, or whether there should be a shortcut on the desktop.

If you have a CD-ROM-based program, consider eliminating the need for installation. You will be doing your users a big favor. When possible, the best setup user interface is no user interface at all.

TIP
Consider eliminating the need for installation of CD-ROM-based programs.



Developing User Interfaces for Microsoft Windows
Developing User Interfaces for Microsoft Windows
ISBN: 0735605866
EAN: 2147483647
Year: 2005
Pages: 334

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net