Windows Phone Thoughts - Daily News, Views, Rants and Raves

Check out the hottest Windows Mobile devices at our Expansys store!

Digital Home Thoughts

Loading feed...

Laptop Thoughts

Loading feed...

Android Thoughts

Loading feed...

Go Back   Thoughts Media Forums > WINDOWS PHONE THOUGHTS > Windows Phone Software

Thread Tools Display Modes
Old 07-20-2005, 12:17 PM
5000+ Posts? I Should OWN This Site!
Join Date: Jun 2007
Posts: 5,067
Default Relocating (part of) Spb Pocket Plus 3.0 to the File Store

Much as the memory handling of the new Spb Pocket Plus (SPP) is indeed much better than the previous version (read: it no longer installs anything completely unnecessary into \Program Files in the RAM), there is still something you can do in order to clean up some additional memory. If you follow this tutorial, you can free up 687+27+1495=2209 kbytes of RAM, which can be quite important for people with devices that have limited RAM memory (pre-WM5 64 Mbyte RAM-equipped devices, not to talk about 32 Mbyte low-end ones like the iPAQ rz1715).

First, install the application into the File Store and not on any storage card or the main memory. This will only copy some 1.162 Mbytes of program .DLL and .EXE files (counting in also the Control Panel Applet, PocketPlus.cpl), a 27k HTML Windows help file (PocketPlus.htm) and five .TSK files totalling 1495 kbytes into the RAM. The rest will go to the File Store.

Now, move the .tsk files to your storage card (or, if you have enough free space there, your File Store). If you have the ignore_my_docs file (this file will be automatically (re)created if you donít have a \My Documents directory on your card/File Store) in the root directory on your storage card (or, File Store), just dump the tsk files in the root.

If you have a \My Documents directory on the card (or, the File Store), just move the tsk files there. Please note that you canít put the files in any subdirectories (not even subdirectories under \My Documents) if you want them to be recognized by the Settings/Today applet.

Now comes the more interesting part: relocating some of the DLLís. If youíve read my article on relocating the previous, 2.5 SPP version, you may have already guessed which DLLís you can relocate: \Windows\plusactions.dll and \Windows\PlusService.dll. In addition, you will be able to relocate the 44k SafeMode.exe.

Youíll first need to create a directory to store your DLL files in in the File Store. Youíll need to include this directory in the so-called System Path.

Iíve described extending the System Path in my article on relocating CalliGrapher from the main memory , but, in order not to have to read another article, I also summarize the steps to be taken in here.

If you donít want to use the already-written tools to create the shared DLL directory and extend the System Path, do the following. (Please note that thereíre several tools that help making this much easier: MemMaid, Tweaks2k2 or Mad Programmerís System Path utility. Iíve described the usage of MemMaid in my CalliGrapher article and using the Mad Programmer tool in my article on relocating SPP 2.5 from the main memory. Tweaks2k2 works similar to these.)

1, create a DLL directory in your File Store youíre going to include in the System Path. Letís call it, say, dlls.
2, get a registry editor. To be able to edit the System Path, get either Resco Registry Editor, Kilmist Registry Editor or Tascal Registry Editor (and not the PHM Registry Editor or the editor in Total Commander 2.0. Please read my post on registry editorsí REG_MULTI_SZ editing capabilities (posted at 07/20/2005) for the whyís).
3, start the registry editor and go to [HKEY_LOCAL_MACHINE\Loader\SystemPath]:

4, edit it. If itís the first time you edit it, it may be empty. If it isnít, append the new directory name in a new row. In the next screenshot, I only have one shared DLL directory, dlls, in the File Store. The latter is called LOOXstore on Pocket Loox devices, iPAQ File Store on HP iPAQís etc. Please make sure you insert the trailing backslash (\) after the path!

Note that this value will be different on your PDA. Again, if youíre unsure, you may want to resort to MemMaid/Tweaks2k2/Mad Programmerís System Path to do the Ďdirty workí for you.

Now, your System Path is modified. The next step will be deregistering the service so that its DLLís are released and may me accessed/moved.

1. start the registry editor and go to HKEY_LOCAL_MACHINE\Services\PocketPlus:

2. click Dll on the lower pane and modify the String value so that the system no longer finds the DLL on the next reboot; that is, it wonít be able to lock them either. For example, insert a leading A letter at the beginning of the name as shown on the following screenshot (again, it can be anything else):

3. press OK and then save. Now, reset your device.
4. after booting in, just move the two above-mentioned DLLís from \Windows to your shared DLL directory. Use for example Total Commander with the WinCE FS plug-in for this.

(Please note that this screenshot has been made for version 2.5 of SPP; this is why the file sizes are a bit different.)

5. start your registry editor; go back to HKEY_LOCAL_MACHINE\Services\PocketPlus and change the Dll value back to PlusService.dll (in this case, Iíve just removed the leading A from before it). Reboot your device again.

And yes, itís running!

You can also relocate the 227k \Windows\PocketPlus.cpl Control Panel applet to the shared DLL directory. Then, you will no longer have the Spb Pocket Plus icon on your Settings/System screen. This is hardly a problem because you will have exactly the same setting screen if you just click the Spb Pocket Plus icon on the Today screen or go to the SPP/Options menu in the PIE plug-in.

Also, to save up another 44 kbytes, you may want to relocate \Windows\SafeMode.exe to anywhere else in the File Store (not necessarily in the shared DLL directory). Just move it to the target directory and go to [HKEY_LOCAL_MACHINE\init] , the key group that lists the (even system) services to be loaded during booting.

In here, search a string value of ďSafeMode.exeĒ. Itíll be just the one before shell32.exe (on this screenshot, the 49th):

Edit it to include the full path to the new location of SafeMode.exe:

Save this new value. Upon the next boot, SafeMode will be executed from the File Store.

(Incidentally, if you do this, upon uninstalling SPP, it wonít delete its entry from HKEY_LOCAL_MACHINE\init. Youíll need to do it yourself.)

Congratulations! Youíve freed up 2209 kbytes of RAM (one-eighth of the clean-start free RAM of an iPAQ rz1715), without crippling SPP or making the new task files unaccessible !
Reply With Quote
Old 07-20-2005, 02:04 PM
Join Date: Apr 2004
Posts: 392
Send a message via MSN to ipaq_wannabe

Reply With Quote
Old 07-20-2005, 08:13 PM
PocketPC Addict
Join Date: Feb 2002
Posts: 176

Cool! Thanks for the tip. 8)
Reply With Quote
Old 07-24-2005, 04:41 PM
5000+ Posts? I Should OWN This Site!
Join Date: Jun 2007
Posts: 5,067

Iíve just retested relocating SPP 3.0 on a WM2003 iPAQ 2210; the Spb*.tsk files SPP installs on these devices are a lot smaller (their cumulative size is 269k) than the ones installed on VGA devices. That is, donít be afraid if you see much smaller TSK files on your PDAís than the ones Iíve mentioned in my original article.
Reply With Quote

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

All times are GMT +1. The time now is 06:39 AM.