Ever wondered how you could install your CAB files onto your memory card/File Store, and not just in the default location in RAM? Yes, you probably already know the answer: CabInstl
, which is indeed a great little program.
However, CabInstl doesnít intregrate well into the Windows Mobile operating system
What does this mean?
Whenever CABís are automatically
started, and thatís the case when ActiveSync installs or reinstalls an application, for example when you relocate them (you may want to read my tutorial on relocating apps easily, without reinstallation on the desktop, with ActiveSync
), CAB files are just executed without CabInstl's getting into the game.
Much as you can tell ActiveSync in where to install your app, it will put it in the root directory
there if you install it to an alternative medium. That is, you wonít be able to fine-tune it to specify a target directory (for example, \MyPrograms
or a directory of any name). In these cases, a solution that integrates better than CabInstl into the operating system is certainly welcome. (Incidentally, this question is often asked on PPC forums; for example, here
First, install Mad Programmer's FileDialogChanger
(the current version is 1.50) and gsGetFile.dll
and import the following registry file ( here's a generic roundup on registry editors and their importing capabilities
if you need to get a registry editor to import scripts ):
[HKEY_LOCAL_MACHINE\SOFTWARE\Apps\Microsoft Application Installer]
(Please note that you donít need to import these keys and values - they are already existing, with different (false) values, which prohibit destination setting to be done.
With any registry editor, just go to HKEY_LOCAL_MACHINE\SOFTWARE\Apps\Microsoft Application Installer] and edit the two keys fAskOptions and fAskDest . As has already been mentioned, they contain zeros (meaning false). You'll need to change them to 1ís (meaning true: that is, do ask for the destination root directory).
This way, you wonít even need to use an import-capable registry editor and you wonít be forced to create a registry import file with the above contents that your particular reg. editor accepts.)
After all this all has been done and you can click a CAB file on your PDA right away (or, just install a program on your desktop that uses the standard ActiveSync dialog). Then, youíll be taken to the root of your target (the one that youíve asked for in ActiveSync, concerning the latter case) memory card/File Store:
Then, just navigate to the target directory:
And press OK (top right icon). Then, the program indeed will be installed in the parent directory youíve specified (see the target directory name in the dialog screen):
- to download the two ZIP files, right-click the above Mad Programmer-links and choose Save target asÖ
instead of directly clicking them; the latter would also mean a Referer HTTP header check and a subsequent error message.
- still regarding Mad Programmerís files, youíll need to copy the following files into your PDAís \Windows directory:
1. from gsgetfile-i.zip, ARMRel\gsgetfile.dll
2. from filedlgchg.zip, ARM\filedlgchg.cpl
Also, youíll need to start Settings/System/ File Dialog Changer
and check in Exchange Standard File Dialog
before youíll see any change (just press OK after doing this; you wonít need to click Add
Note that thereíre a lot of other goodies Mad Programmer has written. You may want to read, for example, my review of the Force Hi-resolution tool V1.50/1.51
or my tips on using his Fonts on Storage
. These two tools are also excellent.
Also note that thereíre some applications with custom-written installers that donít use CABís at all; with them, not even File Dialog Changer will work. Applications like this are, for example, Destinator, Pocket Promt
You may also want to read Gerardís excellent article
on this subject.
EDIT at 18:59: corrected a mistake in the first section. Thanks for the iPAQ HQ forum people for pointing it out! Also, made the text a bit easier to read.