5 - 4
Utilities
The following files are pre-loaded.
LAUNCH.EXE
Launch works in coordination with registry settings to allow drivers or applications to be loaded automatically into
DRAM at system startup. Registry settings control what gets launched; see the App Note for information on these set-
tings. For examples, you can look at the registry key:
HKEY_LOCAL_MACHINE \ Software \ LXE \ Persist
Launch will execute .CAB files, .BAT files, or .EXE files.
Note: All applications to be installed into persistent memory must be in the form of Windows CE CAB files. These CAB
files exist as separate files from the main installation image, and are copied to the CE device using ActiveSync,
or using a Compact Flash ATA card. The CAB files are copied from ATA or using ActiveSync Explore into the
folder System, which is the persistent storage virtual drive. Then, information is added to the registry, if desired,
to make the CAB file auto-launch at startup.
The registry information needed is under the key HKEY_LOCAL_MACHINE \ Software \ LXE \ Persist, as follows. The
main subkey is any text, and is a description of the file. Then 3 mandatory values are added:
FileName is the name of the CAB file, with the path (usually \System).
Installed is a DWORD value of 0, which changes to 1 once auto-launch installs the file.
FileCheck is the name of a file to look for to determine if the CAB file is installed. This will be the name of one of
the files (with path) installed by the CAB file. Since the CAB file installs into DRAM, when memory is lost this file is
lost, and the CAB file must be reinstalled.
There are three optional fields that may be added:
1. Order is used to force a sequence of events. Order=0 is first, and Order=99 is last. Two items which have the same
order will be installed in the same pass, but not in a predictable sequence.
2. Delay is used to add a delay after the item is loaded, before the next is loaded. The delay is given in seconds, and
defaults to 0 if not specified. If the install fails (or the file to be installed is not found), the delay does not occur.
3. PCMCIA is used to indicate that the file (usually a CAB file) being loaded is a radio driver, and the PCMCIA slots
should be started after this file is loaded. By default, the PCMCIA slots are off on powerup, to prevent the “Unidenti-
fied PCMCIA Slot” dialog from appearing. Once the drivers are loaded, the slot can be turned on. The value in the
PCMCIA field is a DWORD, representing the number of seconds to wait after installing the CAB file, but before acti-
vating the slot (a latency to allow the thread loading the driver to finish installation). The default value of 0 means the
slot is not powered on. The default values for the default radio drivers (listed below) is 1, meaning one second
elapses between the CAB file loading and the slot powering up.
The auto-launch process proceeds as follows:
• The launch utility opens the registry database and reads the list of CAB files to auto-launch.
• First it looks for FileName to see if the CAB file is present. If not, the registry entry is ignored. If it is present, and the
Installed flag is not set, auto-launch makes a copy of the CAB file (since it gets deleted by installation), and runs the
Microsoft utility WCELOAD to install it.
• If the Installed flag is set, auto-launch looks for the FileCheck file. If it is present, the CAB file is installed, and that
registry entry is complete. If the FileCheck file is not present, memory has been lost, and the utility calls WCELOAD
to reinstall the CAB file.
• Then, the whole process repeats for the next entry in the registry, until all registry entries are analyzed.
• To force execution every time (for example, for AUTOEXEC.BAT), use a FileCheck of “dummy”, which will never be
found, forcing the item to execute.
• For persist keys specifying .EXE or .BAT files, the executing process is started, and then Launch will continue, leaving
the loading process to run independently. For other persist keys (including .CAB files), Launch will wait for the loading
process to complete before continuing. This is important, for example, to ensure that a .CAB file is installed before
the .EXE files from the .CAB file are run.
• Note that the auto-launch process can also launch batch files (*.BAT), executable files (*.EXE), registry setting files
(*.REG), or sound files (*.WAV). The mechanism is the same as listed above, but the appropriate CE application is
called, depending on file type.
Note: Registry entries may vary depending on software revision level and options.
LAUNCH.EXE and Persistent Storage
If any of the following directories are created in the System folder, Launch automatically copies all of the files in
these directories to the respective folder on the SD/CF drive: