Registry Configuration Service Provider

4/8/2010

Although the registry is directly accessible, accessing the registry through the Registry configuration service provider is the preferred method for updating registry settings. You should use the Registry configuration service provider, or the configuration service provider specific to the settings that require an update.

Note

Access to this configuration service provider is determined by Security roles. Because OEMs and mobile operators can selectively disallow access, ask them about the availability of this configuration service provider. For more information about roles, see Security Roles and Default Roles for Configuration Service Providers.

Characteristics or parameters for the FileOperation, Metabase, and Registry configuration service providers can contain an additional attribute called "translation". The two values for this attribute are "filesystem" and "install". A translation of type "filesystem" causes all file paths to be canonicalized (that is, double backslashes are removed). A translation of type "install" includes all the translations done for "filesystem", but also translates all CE Strings (for example, %CE2%) into the correct file path for the device. Cabwiz will automatically add the appropriate translation to file operations and registry keys in an .inf file.

CAB files and the Registry configuration service provider fail if a registry value is set outside the range of signed integers.

This configuration service provider can be managed over both the OMA Client Provisioning (formerly WAP Client Provisioning) and the OMA DM protocol. When using OMA DM to add a registry key, a child registry value must also be added in the XML code.

For OMA Client Provisioning, the follows notes apply:

  • Querying the registry at the top level is not allowed. All parameters must be queried individually. The underlying data store of the Registry is typed. Be sure to use the datatype attribute of the <parm> tag.
  • This documentation describes the default characteristics. Additional characteristics may be added.
  • Because the Registry configuration service provider uses the backslash (\) character as a separator between key names, backslashes which occur in the name of a registry key must be escaped. Backslashes can be escaped by using two sequential backslashes (\\).

The default security role maps to each subnode unless specific permission is granted to the subnode. The following table shows the default settings:

Access type

Read/write

Roles allowed to query and update setting

Manager

The security role for subnodes is implementation specific, and can be changed by OEMs and mobile operators. To see the permission granted to specific subnodes, see Metabase Settings for Registry Configuration Service Provider.

Microsoft Custom Elements

The following table shows the Microsoft custom elements that this configuration service provider supports for OMA Client Provisioning.

Elements Available

parm-query

Yes

noparm

Yes

nocharacteristic

Yes

characteristic-query

Yes

Recursive query: Yes

Top level query: No

Use these elements to build standard OMA Client Provisioning configuration XML. For information about specific elements, see MSPROV DTD Elements. For general examples of how to use the Microsoft custom elements, see OMA Client Provisioning XML File Examples.

For information about OMA Client Provisioning, see OMA Client Provisioning Files.

Supported Data Types

The following table shows the data types this configuration service provider supports.

XML Data Type Native Registry Type XML Format

integer

REG_DWORD

Integer. A query of this parameter returns an integer type.

boolean

REG_DWORD

Integer value of 1 or 0. A query of this parameter returns an integer type.

float

REG_SZ

Float. A query of this parameter returns a string type.

string

REG_SZ

String. A query of this parameter returns a string type.

multiplestring

REG_MULTI_SZ

Multiple strings are separated by &#xF000; and ended with two &#xF000; - A query of this parameter returns a multiplestring type.

binary

REG_BINARY

Base64 encoded. A query of this parameter returns a binary type.

time

FILETIME in REG_BINARY

The time format conforms to the ISO8601 standard, with the date portion optional. If the date portion is omitted, also omit the "T" delimiter. A query of this parameter returns a binary type.

date

FILETIME in REG_BINARY

The date format conforms to the ISO8601 standard, with the time portion optional. If the time portion is omitted, also omit the "T" delimiter. A query of this parameter returns a binary type.

Note

It is not possible to access registry keys nested under the current path by using the Registry configuration service provider. Instead, you must access the values of the subkey separately by using a new characteristic.

See Also

Tasks

Registry Configuration Service Provider Examples for OMA Client Provisioning

Concepts

Configuration Service Provider Reference for Windows Mobile Devices