Data Types for Registry Values
A version of this page is also available for
4/8/2010
Values in the registry can be stored in several different data types. The following table shows the data types that Windows Mobile supports.
Value type constant | Description |
---|---|
REG_BINARY |
Binary data in any form. |
REG_DWORD |
A 32-bit number. |
REG_DWORD_LITTLE_ENDIAN |
In little-endian format, a multibyte value is stored in memory from the lowest byte (the little end) to the highest byte. For example, the value 0x12345678 is stored as (0x78 0x56 0x34 0x12). |
REG_DWORD_BIG_ENDIAN |
A 32-bit number in big-endian format. In big-endian format, a multibyte value is stored in memory from the highest byte (the big end) to the lowest byte. For example, the value 0x12345678 is stored as (0x12 0x34 0x56 0x78). |
REG_EXPAND_SZ |
A null-terminated string that contains unexpanded references to environment variables, for example, %PATH%. |
REG_LINK |
A Unicode symbolic link used internally. Applications should not use this type. |
REG_MULTI_SZ |
An array of null-terminated strings, terminated by two null characters. |
REG_NONE |
No defined value type. |
REG_RESOURCE_LIST |
A device driver resource list. |
REG_SZ |
A null-terminated string. |
Size Limits for Registry Data
When programming with the registry, keep name and data size small. Registry values in Windows Mobile take up less memory than registry keys. Design your registry hierarchy to use as few keys as possible.
The following table shows size limits for different elements in the registry.
Limit | Description |
---|---|
Key or value name length |
255 characters |
Data size |
4 KB |
Key hierarchy depth |
Up to 16 nested subkeys |