News | Articles | Libraries | Developer Tools | Books | Forum Links | Search   
Sections:
 

Using Spb AirSetup to create Pocket PC installers

By Alexander Shargin, March 31, 2003.
Print version

Summary

Spb AirSetup is a tool to create Pocket PC installers to be run directly on Pocket PC without desktop PC (for Over-the-Air downloading). It is a command line tool whereby you provide a CAB file, a EULA, a readme and other parameters for it to generate a compressed, self-contained, self-extracting installer (Pocket PC executable).

Over-the-Air

With the advent of Pocket PC Phone Edition (Pocket PC and mobile phone with built-in GPRS support integrated) Over-the-Air program downloading and installation is becoming a more and more common potential in the Pocket PC world. Using this potential the installation is performed on a Pocket PC without any support from a desktop PC. The only way to install applications directly on Pocket PC is using CAB files. However CAB files do have some serious limitations. They do not use compression, which is crucial for decreasing the size of Over-the-Air downloads. Neither do they provide an option to ask a user to accept the end-user license agreement, which may cause some serious legality problems.

What You Need

Background

On Pocket PC platform, new applications are usually installed on the device using CAB files. However, sometimes the facilities provided by CAB files are not sufficient. AirSetup is a tool that can convert your CAB to a GUI installation program (EXE) which can be run on the device to carry out the installation process.

AirSetup Features

Compared to what CAB file technology has to offer AirSetup provides the following additional features.

  • Compression. All files of your application are stored in a compressed form, which makes the installation package considerably smaller and easier to transfer.
  • Readme. Readme information is displayed as the first step of the installation process. You can show the user any information (in HTML format) before he/she installs your program on Pocket PC.
  • End-user license agreement (EULA). EULA can be included into the installation package. If included EULA is displayed as the second step of the installation process. The user is not able to proceed the installation of your application without accepting the terms of EULA.
  • Installation to custom folder. Installation wizard allows the user to install your application to any folder he/she wants. A folder is selected using the user-friendly tree control. The user can also install the application to any storage card present on Pocket PC. If installation to a custom folder is not required you can turn this feature off.

Using AirSetup

AirSetup is a command line tool which takes your installation CAB along with some additional files (readme, EULA) and generates an EXE file that can be run on Pocket PC to perform installation. The size of the resulting EXE is usually smaller than that of the original CAB file.

Step 1 - Readme

Sample installation step 1

Step 2 - EULA

Sample installation step 2

Step 3 - default/custom target

Sample installation step 3

Step 4 - choose a custom target folder

Sample installation step 4

Using AirSetup

First of all you should create a CAB file. Then start AirSetup.exe from the command prompt. Here is a usage example:

AirSetup -appname Minesweeper -cpu arm -cab Minesweeper.ARM.cab -readme readme.htm -eula eula.txt -out Minesweeper_setup.exe

AirSetup will create a Minesweeper_setup.exe program for the ARM-based Pocket PC. When executed, this program will guide the user through four wizard steps (readme, end-user license agreement and 2-step custom folder selection) and then unpack and install your CAB file.

Note: AirSetup can be run only under Windows NT/2000/XP.

Reference

AirSetup is run using the following command line:

AirSetup -appname <appname> -cpu [arm|mips|sh3] -cab <filename> -readme <filename> -out <filename> [-eula <filename>] [-installdir <dirname>] [-nocustomdir]

Command line parameters have the following meaning.

-appname <appname>
This parameter specifies the name of the application the installation is built for. This name will be used by the installation wizard whenever the app name is required. When you want to add spaces in parameters you need to use quotes (like -appname "My Application").
-cpu [arm|mips|sh3]
This parameter specifies a platform the installation is built for. The installation will not run on any platform other than specified by this parameter.
-cab <filename>
Specifies a CAB file that will be installed on Pocket PC. It must be built for the platform specified by -cpu parameter otherwise it will not be properly installed on Pocket PC.
-readme <filename>
Specifies a readme file for your application. The content of this file will be displayed on the first step of the installation wizard. This file must be in HTML format.
-out <filename>
Specifies the name of the output EXE file generated by AirSetup.
-eula <filename>
Specifies the End-user license agreement for your application. If specified, this file is displayed on the second step of the installation wizard. This file must be in plain text format.
-installdir <dirname>
Specifies the name of the directory your application must be installed to. If not specified, it is assumed to be the same as the app name specified by -appname parameter.
-nocustomdir
Use this key if you do not want to allow the user to install your application to a folder other than hte default one (specified when the CAB file was generated). The user is prompted for a custom folder on steps 3 and 4 of the installation wizard. If -nocustomdir is specified, these 2 steps are omitted.

Sample

You can download a sample installation package generated by AirSetup here:

Spb Pong setup

Conclusion

If you think about distributing your application Over the Air you should think about using tools like Spb AirSetup instead of distributing CAB files. It will make your Pocket PC installations smaller or turn them into user-friendly installation wizards with End-user license agreement and possibility to install to storage cards.

Related resources:

Discuss

Discuss this article. Here you can write your comments and read comments of other developers.
Rate this article:     Poor Excellent    
 12345 
© 2001-2005 Pocket PC Developer Network, a division of Spb Software House