[General Questions and Answers] wg5566:
continue

Understanding the Structure of the Registry

Now for those that want to learn how to edit the registry themselves, let's dig in. In order to follow someone's direction of where to find a setting to change in the registry, you will need to know the basics about how the registry is organized and some basic lingo (i.e. subtree, key, subkey, or value). So this is the only time that we are forced to get really geeked up in this article.

What's all that now?

Okay first of all, there a few words that we need to make sure everyone understands so that we are all talking on the same page. Here are some basic terms and what they mean:

tree

This is where you start. The registry is divided up into 4 different sections called Subtrees. As far as navigating around, you could think of these as different hard drives on a PC.​

key

A key is a general area in a subtree. You can think of this like a folder on a hard drive.​

subkey

This is basically the second layer down in a key. You could think of this like a subfolder.​

value

A value holds a specific setting in a subkey. Think of it like a file. This is what it is all about... getting to the value of a key or subkey to change its setting. There are several different type of values, i.e. Dword or binary. You usually do not have to worry about this when editing values are already in the registry, as they are already assigned as the appropriate value type.

address

The location of a value. See below for the format of writing a registry address.​

How the registry is organized

This is only important in this article with the eye of being able to navigate in the registry and how to find a specific value (or setting) that someone shares on a forum, article, or book.

The registry is organized in a tree structure. When you look at the registry in a Registry Editor, it looks very similar to what your PC looks like when looking at it with Windows Explorer. You will always start with one of the 4 subtrees when trying to find a value to change in the registry. Here are the subtrees that are in the registry:

HKEY_USERS

Contains all the actively loaded user profiles on the computer.​

HKEY_USERS is sometimes abbreviated as "HKU."

HKEY_CURRENT_USER

Contains the root of the configuration information for the user who is currently logged on. The user's folders, screen colors, and Control Panel settings are stored here. This information is associated with the user's profile.​

This key is sometimes abbreviated as "HKCU".

HKEY_LOCAL_MACHINE

Contains configuration information particular to the handheld (for any user).​

This key is sometimes abbreviated as "HKLM."

HKEY_CLASSES_ROOT

The information that is stored here makes sure that the correct program opens when you open a file by using Mobile Explorer. Most registry edits are in the other three subtrees​

This key is sometimes abbreviated as "HKCR."

Navigating the Registry

Phew... now we got past that part, let's show you how to navigate in the registry. It is really pretty easy. As I mentioned above the registry is organized in a tree structure, much like hard drives and folders are organized on a Windows PC. There are two ways to go to the value you want to change. You can drill down in the tree structure (folders) to find it... or you can do a search and jump right there, if you know exactly what the name of the subkey or value is.

.......PSSSTTTT.....before we continue did you remember to do a full backup?​

Navigate to a Value

First of all let's show you how to actually navigate on your own to a specific value. Most of us have seen how we might write a location of a file on a Windows PC. You first put the hard drive (subtree) followed by a folder (key) followed by a subfolder (subkey) followed by the document name (value) with each part separated by a backslash "\". It might look like this "C:\My Documents\Work\Expense_Report.xls". It is exactly the same with a registry address as well. You put the Subtree (think of C:\ or D:\ on a PC) followed by a Key (think of folder) followed by a Subkey (think of subfolder) followed by the Value (think of file) with each one separated by a backslash "\".

For example to change the startup homepage for Windows Mobile Internet Explorer in a registry editor you would go to "HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\Start Page" and change the website address to what you want, i.e. "http://www.WMExperts.com". This is really easy as when you first open up a registry editor you will see the 4 Subtrees. In this example you will see a + sign next to the Subtree called "HKEY_CURRENT_USER". Simply click on the + sign. Now you will see a list of Keys (folders). Scroll down until you see "Software" and just like before click on the + sign. Then scroll down until you see "Microsoft" and.. you guessed it... click on the + sign. Now scroll down until you see "Internet Explorer" and click on it. Now in the window below that you will see the value (file) called "Main". Click on it to open it. After it opens then simply type in the homepage you want your Mobile Internet Explorer to start with, i.e. "http://www.WMExperts.com" and click save or done. That's it. You just edited your registry. It is that easy.

Now I want to walk you through one more very popular registry edit with screen shots for every step of the way. I will be using Resco Registry Editor for this example. This registry edit is called GlyphCache... why they named the subkey that is beyond me, but what is important is that this tweak can greatly speed up how fast your phone runs and responds! This is often times the very first registry hack that veteran WM users will do when they first buy a new WM phone. Here is how you might see this registry edit spelled out in a forum, book, or article:

Browse to HKEY_LOCAL_MACHINE\SYSTEM\GDI\GLYPHCACHE\

You can change the "limit" value :

4096 : this will slow down the display, but use less memory (default setting on Palm-size PC)

8192 : this is the default value on Pocket PC, average memory/performances

16384 : this will speed up the display, but use more memory, twice the default Pocket PC value
​

What this means is that we need to navigate to "HKEY_LOCAL_MACHINE\SYSTEM\GDI\GLYPHCACHE\" open up the value called "Limit" and change the setting to either "4096", "8192", or "16384" and save it.

Okay, now this is how to actually do it. Once you open up Resco Registry Editor, you will see all 4 of the Subtrees.

Click on the + sign next to "HKEY_LOCAL_MACHINE". And you will see the keys expanded below it.

​

Now in the top window, scroll down until you see "System" and click on the + sign so that all the subkeys are expanded out below it.

Next scroll down until you see the subkey called "GDI" and click on the + sign to expand it out as well so that you see "GLYPHCACHE" and click on it.

​

Now with the "GLYPHCACHE" selected, look at the bottom window and you will see the value called "Limit" currently set to "8192".

Click on the value called "Limit" to open it up. Do not change the name of the value, but do change the number to either "4096", "8192", or "16384" (hint... the more RAM your phone has, the higher the number you want to choose) and click "Done".

​

That's it. You just did yet another registry edit. If you find the number you chose actually slows down your phone, then follow these steps again and choose one of the other numbers until you find the one that is best for your specific model of phone.

to be continued​