Você está na página 1de 12

About

KaiserTweak is a little tool that tweaks some of your HTC Kaiser (P4450, TyTN II, Vario
III) registry settings. Making it took several hours of my life, so you better enjoy it. Note
that some tweaks may work on devices other than the Kaiser, but I've looked at the
factory settings from my own Kaiser to get default values and such, so take care with
other devices.

If you like to donate, here's a PayPal button for you:

Download
You can download a ZIP below, containing the KaiserTweak EXE and an XML file
containing the actual tweaks. Unzip it somewhere, and copy both the files to the same
folder on your phone. Then run the EXE, and voila :)

KaiserTweak.zip +- 400kb

Note: Most of the tweaks require a soft-reset to become current. I'd advise setting your
values (changes are applied to the registry on value selection) and then always doing a
soft-reset.

Nika's XML Updates


While I am working on a new version of this site and new features for KaiserTweak
itself, Nikagl (from XDA-Developers) is maintaining the KaiserTweak XML file.You
may find a newer version of this file in the KaiserTweak XML topic. Note that you
should not reply to that topic! Do that in the KaiserTweak discussion topic!

Screenshot
By popular request, here's a screenshot

Tweaks Listing
Call
- Fast Sleep
- Sleep
- Show Battery Icon
- HTC or Windows Mobile Dialer
- Volume Change Beeps
- Ringtone

Text Messages
- Sent Notification

Data (GPRS/EDGE/HSDPA/WIFI)
- Disconnect After
- Always On
- Enabled
- HSDPA
- Wifi standby mode
- Wifi Certificate Message

Bluetooth
- BitPool
- SampleRate
- UseJointStereo
TCP/IP
- TCP Connect Resends
- TCP Data Resends
- TCP Window Size

Security
- Not-certified Warning

Keyboard
- Backlight Timeout
- Slide Wake

Camera
- Save Location
- GPS Photo
- Rotate Bug
- 3MP Panorma Shot (ie. 6MP Camera)

GPS
- Assisted GPS

Power Managment
- Memory Card
- AsyncMac1
- PPTP1
- L2TP1

Notifications
- AC Resume from Suspend
- Battery Resume from Suspend

User Interface
- Window Animation
- Menu Animation
- Vertical Scrollbar Width
- Vertical Scrollbar Button Height
- Horizontal Scrollbar Button Width
- Horizontal Scrollbar Height
- Startup Animation

ClearType
- Landscape
- PocketIE

PocketIE
- Max. Connections
- PIE User Agent CustomBase
- D-Pad Scroll Navigation

TouchFLO
- Sensitivity
- Scroller
- Sound

Today Screen
- Title Bar - Battery / Clock
- Title Bar - Clock Settings
- Date Display
- Wireless Today

HTC Application
- Music Tab
- Music Player for HTC Home Plugin
- Unlock HTC Home
- Scroll, Zoom and Rotate in HTC Album
- X Button in HTC Album
- HTC Home e-mail button

Contacts
- SIM Contacts

Call Log
- Log Clean Period

Locations
- PocketIE Downloads
- Saved Audio
- Saved Video
- Saved Images

Cache
- File System Cache
- File System Filter Cache
- GDI/Font Cache

Tools
- Empty Start Menu
- Default QuickGPS Settings

Credits
I just made the tool, credits for the reghacks go to the good people of MoDaCo, xda-
developers and GoT.

Bugs, tweak requests, etc


Please post those here. If you are requesting addition of a new tweak, please provide as
much info as possible about it, like the relevant registry keys and their settings and what
exactly it does.

KaiserTweak XML format


The KaiserTweak XML file is an XML format with kaisertweak as root. The root can
contain multiple category nodes, which in turn can contain multiple tweak nodes, in the
following way:
<kaisertweak>
<category>
<tweak>
...
</tweak>

<tweak>
...
</tweak>
</category>

<category>
<tweak>
...
</tweak>

<tweak>
...
</tweak>
</category>
</kaisertweak>

Notes on the following documentation:


- Required child nodes and attributes are underlined
- All tags, attributes, and attribute values are lowercase. The default attribute value (if
any) is underlined

Notes on implementation:

Anywhere keys are used, shorthand format is used: Root\Key\Name. Also, the root may
be abbreviated. The following root abbreviations are available:
HKCR: HKEY_CLASSES_ROOT
HKCU: HKEY_CURRENT_USER
HKLM: HKEY_LOCAL_MACHINE
Example:
HKLM\Drivers\BuiltIn\RIL\EnableFastDormantDisplayDuringCall

/kaisertweak/category
Attributes: none
Children: title, tweak
Required: Yes

Defines a category. Categories without any relevant tweaks are not displayed.

/kaisertweak/category/title
Attributes: none
Children: text
Required: Yes

Defines a category's title.

/kaisertweak/category/tweak
Attributes: version
Children: title, each, device, value, key, description
Required: Yes

Defines a tweak.

/kaisertweak/category/tweak[version]
Values: all, wm5, wm6
Required: No

Defines for which Windows Mobile version the tweak shows up.

/kaisertweak/category/tweak/title
Attributes: none
Children: text
Required: Yes

Defines a tweak's title.


/kaisertweak/category/tweak/each
Attributes: display
Children: text
Required: No

'Repeats' a tweak for multiple registry keys. The displayed tweak title becomes
./tweak/title + ": " + ./tweak/each[display] . The text content of this node is the key
pattern, where the patterning is done with the * (star) character, just as with filenames, for
example:
HKLM\Comm\ConnMgr\Providers\*7C4B7A38-*\Connections\*\AlwaysOn
Ofcourse, when you do this, how do you know the actual key used? You don't, and this is
the only time you are allowed to use the key node without text content. If you do this, the
actual key for this tweak is used. Also note that you cannot have a key end with a star -
there must be a part after it.

/kaisertweak/category/tweak/each[display]
Values: negative integer
Required: Yes

This attribute defines the text to use for the title of tweak. This is done by selecting a part
of the used key, and appending it to the tweak title. -1 defines the rightmost part of the
key, -2 the one left of that, etc.

For example, image the following each node:


<each display="-2">HKLM\Comm\ConnMgr\Providers\*7C4B7A38-
*\Connections\*\AlwaysOn</each>
and the following registry entry:
HKLM\Comm\ConnMgr\Providers\{7C4B7A38-XXX-XXX-XXX}\Connections\T-Mobile
Internet\AlwaysOn
and a tweak/title of "Always On", would result in this key getting the title "Always On:
T-Mobile Internet". Obviously it only makes sense to use a value for display that
corresponds to a part of the key that has * in its pattern.

/kaisertweak/category/tweak/device
Attributes: match
Children: text
Required: No

Allows matching by device name (found in Control Panel --> System --> Device
Information --> Identity --> Model). This is "Kaiser" for all TyTN II based devices. If this
node is ommitted, all devices are matched. You may add as many device nodes as you
need.
/kaisertweak/category/tweak/device[match]
Values: is, isnot
Required: No

Defines the matching mode. Note that you can have multiple device nodes, but you
cannot mix the match mode between them, and this wouldn't make sense. If you use is,
only those devices will get the tweak; if you use isnot, all other devices will get the
tweak.

/kaisertweak/category/tweak/value
Attributes: default, disabled, advised, current, custom, value
Children: text
Required: Yes

Multiple value notes define the list of options a user can select. The text content of the
node is the displayed value.

/kaisertweak/category/tweak/value[default]
Values: default
Required: One value node should have this attribute set

Denotes that this is normally the default setting if no tweaking has been done. If for some
reason the value cannot be gotten from the registry, this value will be the one selected, if
no value is found with disabled set.

/kaisertweak/categroy/tweak/value[disabled]
Values: disabled
Required: One value node should have this attribute set

This attribute is almost the same as the default attribute, and they are usually applied to
the same value node. The differences are that this attribute does not have an indicator in
the user interface, has preference over default for selecting a value when the key could
not be read from registry (or other key matching logic did not work out). You should read
the meaning of this attribute as "the TWEAK is disabled", not "the OPTION is disabled".
For example, if you have a key "HKLM\SomeThing\IsDisabled", the disabled attribute
would be applied to the value which has "Enabled" as description, not the value that
"Disabled" as description. It's confusing sometimes ;)

/kaisertweak/category/tweak/value[advised]
Values: advised
Required: One value node should have this attribute set

Denotes that this is the advised value for this tweak.

/kaisertweak/category/tweak/value[current]
Values: current
Required: If key[type] is folder, one value node should have this attribute set

This attribute should only be used with a key[type] of folder. The value attribute and
text content of this value node will be filled with the current folder value in the registry

/kaisertweak/category/tweak/value[custom]
Values: custom
Required: No

This attribute should only be used with a key[type] of folder. When a user select this
attribute, he will be presented with a folder selection screen.

/kaisertweak/category/tweak/value[value]
Values: any
Required: Yes

The value to be read/written to/from the registry. With a key[type] of folder, you may
use %MyDocuments% and %StorageCard% to refer to the My Documents and Storage
Card folders, as they vary between different devices and languages. Note that these
variables do have a heading "\" but not a trailing one. This way you can concat them
together. For example:
%StorageCard%%MyDocuments%\My Files
may become
\Storage Card\My Documents\My Files

/kaisertweak/category/tweak/key
Attributes: type, mode, match, getvalue, action, setvalue, when, whenvalue
Children: text
Required: Yes
Defines rules for reading and writing registry keys. The text content of this node is the
actual registry key, this may only be ommitted when also using the each node. Use a
number of key nodes with different attributes in a single tweak allows you to do create
fairly sophisticated behaviour (though sometimes what you want to do can be length :))
/kaisertweak/category/tweak/key[type]
Values: dword, string, multistring, folder
Required: No

The type of registry key. Note that folder is a special case of string.

/kaisertweak/category/tweak/key[mode]
Values: both, get, set
Required: No

Defines if this key rule applies to reading (get) the registry, writing (set) the registry, or
both.

/kaisertweak/category/tweak/key[match]
Values: value, exists
Required: No

This attribute is only used when reading from the registry. When set to value, the actual
value is read from the registry, which at least one key node should do (and usually does,
as it's the default attribute value).

exists has a special meaning. When reading the registry, all key nodes that have a match
attribute of exists are first looked for. If not all of them are found, the interface selects the
value that has the disabled attribute set, or if there isn't one, the one with the default
attribute set.

/kaisertweak/category/tweak/key[getvalue]
Values: any
Required: No

This attribute is only used when reading from the registry and key[match] is value. If the
getvalue attribute is set, the registry key must have that value or the value with disabled
or default is set.

/kaisertweak/category/tweak/key[action]
Values: set, empty, delete
Required: No

This attribute is only used when writing to the registry. It defines if we want to write the
user-selected value to the registry, empty the value or delete the key. delete is usually
only used when multiple key nodes are present and have different when attributes set.
empty was added in v0.41, because KaiserTweak ignores an empty value (this is by
design!).

/kaisertweak/category/tweak/key[setvalue]
Values: any
Required: No

This attribute is only used when writing to the registry and key[action] is set to set. This
attribute overrides the user-selected value.

/kaisertweak/category/tweak/key[when]
Values: always, enabled, disabled, value
Required: No

This attribute is used only when writing to the registry. This attribute defines when this
key rule is valid. If this attribute is set to always (the default) the key rule is always used.
When the attribute is set to enabled the key rule is used when any other value node is
selected than the one which has the disabled attribute (value[disabled!=disabled]).
disabled is the opposite, and is only applied when the value node with the disabled
attribute set is selected (value[disabled==disabled]). If the attribute is set to value, the
rule is only applied if the user selected a value that matches with whenvalue attribute
(value[value==key[whenvalue]]).

/kaisertweak/category/tweak/key[whenvalue]
Values: any
Required: No

See key[when].

/kaisertweak/category/tweak/description
Attributes: none
Children: text
Required: Yes

The description shown for the tweak.

KaiserTweak XML format cheat sheet


I myself always look at this cheat sheet when writing the XML tweaks. It doesn't explain
what does what, but I find it handy to remember the format. I guess if you read all the
above, this will make sense to you:
<kaisertweak>
<category>
<title>Category</title>
<tweak version="[ALL|wm5|wm6]">
<title>Tweak</title>

[<each display="-index">
HKLM\Henk\StartsWith*\*EndsWith\*Contains*\ToBeDisplayedIfDispl
ayIs-2\Key
</each>]

[<device match="[IS|isnot]">Kaiser</device>]

<value
[default="default"]
[disabled="disabled"]
[advised="advised"]
[current="current"]
[custom="custom"]
value="Registry Value">
Displayed Value
</value>

[<key
mode="[get|set|BOTH]"
type="[DWORD|string|multistring|folder]"
match="[exists|VALUE]"
[getvalue="somevalue"]
action="[SET|empty|delete]"
[setvalue="somevalue"]
when="[ALWAYS|enabled|disabled|value]"
[whenvalue="somevalue"]>
[[HKLM|HKCU|HKCR]\Path\To\Key]
</key>]

<description>Description</description>
</tweak>
<category>
</kaisertweak>
As you can see, I use [ ] around nodes and text values to denote they are not required, and
[onevalue|othervalue|DEFAULTVALUE] as attribute definition. Note that this doesn't
really correspond to actual required nodes, as the requirements change by using other
nodes. Also, any attribute with a default value is by definition not required. However, you
will still find that the above makes sense in an intuitive way (at least for me :))

Bye bye

Você também pode gostar