All the driver’s settings are held in the registry under Windows or an equivalent file structure under operating systems that do not have a Windows type registry.
The Windows registry can be accessed using system utilities Regedit or Regedt32. Under Linux and Mac OS X the settings are held in file TBUPDD.reg. For CE the registry settings are held in HKLM\Drivers\BuiltIn\TBUPDD.
The structure of UPDD settings, as viewed in the Windows registry and mimicked in the registry files, is as follows:
The TBUPDD branches hold the following information:
Branch |
Description |
API Reference |
TBUPDD |
System specific details. |
N/A |
Parameters |
UPDD global information. Settings that cover all bundles. |
Global |
Bundle information, specific to a particular install. |
Bundle |
|
{number} |
Each installed device, referred to as the Device Handle |
Device Handle |
Controller |
Controller(s) held within the bundle that can be installed. |
N/A |
Full registry branch structure and keyword settings and their meaning are shown in the Registry Settings document.
Some UPDD functions have specific UPDD API calls but other functions are simply controlled by the value of a setting in the registry. If, as a programmer using the UPDD SDK, there is no obvious API call to implement a desired function it may be possible to invoke the function simply by changing the registry setting and applying the change using call TBApiApply or TBApiApplyNoReload as appropriate.
Here are a couple of examples to show how this can be achieved:
To enable or disable the system tray use the TBApiSetSettingDWORD call to set the bundle registry key ‘Show Systray’ to 0 (disable) or 1 (enable).
To enable or disable a device use the TBApiSetSettingDWORD call to set the bundle registry key ‘Enabled’ to 0 (disable) or 1 (enable), passing the Device Handle of the device.
UPDD implements it’s own language system and translation files are supplied for various languages and new ones are easily implemented (see UPDD on-line documentation). This means that the UPDD can display it’s own language within its dialogues irrespective of the system’s locale (assuming code pages are available to display the characters).
To enable a specific language use the TBApiSetSettingSZ call to set the bundle registry key ‘Language’ to a language value; i.e. FR = French, EN = English, JP = Japanese, ES = Spanish, DE = German, IT = Italian etc.
Updating UPDD
settings using the TBsystry utility
UPDD version 3.8.56 and higher supports a
command line interface to change various UPDD settings and reactivate the
driver using these settings.
The TBsystry
utility program, found in
the UPDD applications folder, exports
this interface using the following syntax.
tbsystry <device=N> /option
Where option is one of the following
Parameter |
Description |
Reload |
force the driver to re-read registry settings (not necessary when
using this interface to change a setting) |
toggletouch |
toggle the device enabled state |
Enable |
enable the device |
Disable |
disable the device |
pointeroff |
disable the driver mouse pointer interface (system wide - all devices) |
pointeron |
enable the driver mouse pointer interface (system wide - all devices) |
Soundon |
turn sound on for the device |
Soundoff |
turn sound on for the device |
togglesound |
togglesound setting for the device |
Use the following options to change arbitrary UPDD registry based
settings. UPDD registry settings are documented in the UPDD SDK user help
file. |
|
setting:XXX=NNN |
set the DWORD value XXX to the
hex numeric value XXX |
Settingsz:XXX=ZZZ |
set the string value XXX to the value ZZZ |
|
|
Notes:
1.
/reload
option is not necessary when using the TBsystry interface to change a setting
and should only be used if another method has been used to update the registry
settings. Under Windows, if you change the registry settings using some method
other than programming, say a script or batch file, and need to invoke UPDD to
reapply the settings this can be achieved by calling the reload option.
2.
If the device=N
option is omitted the first non-deleted device is used.
3.
If
device=0 is specified the general options are changed.
4.
Take
care when using /setting: or /settingsz: to specify the correct data type, e.g.
do not use /setting to change a string value or vice versa. Doing so can
corrupt the UPDD settings and lead to incorrect behavior including system
crashes.
5.
All
options are case sensitive
Examples
tbsystry device=0 /settingsz:Language=FR
change the Default language to French.
tbsystry device=3 /device- disable driver
activity for the device listed as #3 in the DCU.
There are a number of registry related API calls to set and retrieve registry entries in the UPDD branch. See the individual calls for more information.