The theme of Windows Mobile is actually a tsk file. We put the created tsk file under the Windows directory, and then open the settings for today, the program set today scans the files suffixed with tsk in the Windows directory by default, decompress Tsk, and read various configurations. After reading the files, the system writes them to the Registry, the next read is directly from the registry. The tsk file is actually the suffix of the cab package created by the cab manager and renamed it Tsk.
We can use the zip decompression tool to decompress the tsk file. I have extracted an existing tsk file. After decompression, we will find that _ setup. XML, stwate ~ exists ~ 1.001. stwate ~ 2.002, open _ setup. xml and check it, as shown in the following figure:
<WAP-provisioningdoc> <br/> <characteristic type = "Install"> <br/> <parm name = "installphase" value = "Install"/> <br/> <parm name = "osversionmin" value = "4.0"/> <br/> <parm name = "osversionmax" value = "6.99"/> <br/> <parm name =" buildnumbermin "value =" 0 "/> <br/> <parm name =" buildnumbermax "value ="-536870912 "/> <br/> <parm name =" appname "Value = "Umu Corporation Umu theme"/> <br/> <parm name = "installdir" value = "% CE2 %" Translation = "Install"/> <br/> <parm name = "numdirs" value = "1"/> <br/> <parm name = "numfiles "value =" 2 "/> <br/> <parm name =" numregkeys "value =" 3 "/> <br/> <parm name =" numregvals "value =" 43 "/> <br/> <parm name =" numshortcuts "value =" 0 "/> <br/> </characteristic> <br/> <characteristic type =" fileoperation "> <br/> <characteristic type =" % CE2 % "Translation =" Install "> <br/> <characteristic type =" makedir" /> <Br/> <characteristic type = "stwater_240_320.png" Translation = "Install"> <br/> <characteristic type = "extract"> <br/> <parm name =" source "value =" stwate ~ 1.001 "/> <br/> </characteristic> <br/> <characteristic type =" stwater_320_240.png "Translation =" Install "> <br/> <characteristic type = "extract"> <br/> <parm name = "Source" value = "stwate ~ 2.002 "/> <br/> </characteristic> <br/> <characteristic type = "Registry"> <br/> <characteristic type = "hkcu/software/Microsoft/today/umu. tsk "> <br/> <parm name =" usedefatititlecolor "value =" 0 "datatype =" integer "/> <br/> <parm name =" color_btnface "value =" 1 ndiaa = "datatype =" binary "/> <br/> <parm name =" color_btntext "value =" aacaaa = "datatype =" binary "/> <br/> <parm name = "color_commandbar" value = "aaaaaa =" datatype = "binary"/> <br/> <parm name = "color_commandbartext" value = "//// AA = "datatype =" binary "/> <br/> <parm name =" color_commandbartext_highlight "value =" gbywaa = "datatype =" binary "/> <br/> <parm name = "color_graytext" value = "V7 +/AA =" datatype = "binary"/> <br/> <parm name = "color_highlight" value = "gbywaa = = "datatype =" binary "/> <br/> <parm name =" color_highlighttext "value =" nrtpaa = "datatype =" binary "/> <br/> <parm name = "color_inactivecaptiontext" value = "okcgaa =" datatype = "binary"/> <br/> <parm name = "color_menutext" value = "aaaaaa =" datatype =" binary "/> <br/> <parm name =" color_navbartext_highlight "value =" gbywaa = "datatype =" binary "/> <br/> <parm name =" color_softkeyflat" value = "aaaaaa =" datatype = "binary"/> <br/> <parm name = "color_titleflat" value = "aaaaaa =" datatype = "binary"/> <br/> <parm name = "color_titleflatdonebtn_highlight" value = "gbywaa =" datatype = "binary"/> <br/> </characteristic> <br/> <characteristic type = "hkcu/software/Microsoft/today"> <br/> <parm name = "usestartimage" value = "1" datatype = "integer"/> <br/> <parm name = "DPI" value = "192" datatype = "integer"/> <br/> </characteristic> <br/> <characteristic type = "HKLM/software/Microsoft/color "> <br/> <parm name =" 4 "value =" // AA = "datatype =" binary "/> <br/> <parm name =" 5 "value =" aaaaaa = "datatype =" binary "/> <br/> <parm name =" 6 "value =" gicaaa = "datatype =" binary "/> <br/> <parm name = "7" value = "aaaaaa =" datatype = "binary"/> <br/> <parm name = "8" value =" aaaaaa = "datatype =" binary "/> <br/> <parm name =" 9 "value =" // AA = "datatype =" binary "/> <br/> <parm name = "11" value = "gbywaa =" datatype = "binary"/> <br/> <parm name = "12" value = "aaaaaa = "datatype =" binary "/> <br/> <parm name =" 13 "value =" aaaaaa = "datatype =" binary "/> <br/> <parm name = "14" value = "wmdaaa =" datatype = "binary"/> <br/> <parm name = "15" value = "Z + jqp =" datatype = "binary"/> <br/> <parm name = "16" value = "U9 + 3AA =" datatype = "binary"/> <br/> <parm name = "17" value = "gicaaa =" datatype = "binary"/> <br/> <parm name = "18" value = "gicaaa =" datatype =" binary "/> <br/> <parm name =" 19 "value =" nrtpaa = "datatype =" binary "/> <br/> <parm name =" 25" value = "aaaaaa =" datatype = "binary"/> <br/> <parm name = "26" value = "wmdaaa =" datatype = "binary"/> <br/> <parm name = "32" value = "// AA =" datatype = "binary"/> <br/> <parm name = "33" Value = "aaaaaa =" datatype = "binary"/> <br/> <parm name = "34" value = "gbywaa =" datatype = "binary"/> <br /> <parm name = "35" value = "nrtpaa =" datatype = "binary"/> <br/> <parm name = "36" value = "Z + jpaa = "datatype =" binary "/> <br/> <parm name =" 37 "value =" U9 + 3AA = "datatype =" binary "/> <br/> <parm name = "38" value = "aaaaaa =" datatype = "binary"/> <br/> <parm name = "39" value = "//// AA = "datatype =" binary "/> <br/> <parm name =" 40 "value =" gbywaa = "datatype =" binary "/> <br/> </characteristic> <br/> </WAP-provisioningdoc>
<Characteristic type = "stwater_240_320.png" Translation = "Install">
<Characteristic type = "extract">
<Parm name = "Source" value = "stwate ~ 1.001 "/>
</Characteristic>
From this section, we can see that stwate ~ 1.001 this file is actually an image file named stwater_240_320.png. That is to say, tsk contains the context file of the Start Menu. All the files starting with stwater are context files of the Start Menu, which are also defined in XML:
<Characteristic type = "hkcu/software/Microsoft/today">
<Parm name = "usestartimage" value = "1" datatype = "integer"/>
<Parm name = "DPI" value = "192" datatype = "integer"/>
</Characteristic>
Here, usestartimage is set to 1, indicating that the desktop wallpaper uses the menu background image file, which is described as follows in the WM document:
If this value is set to 1, then the Start Menu background image will be used as the today screen background image. This means only the stwater.gif file wocould need to be supplied.
Insert a question. The default wallpaper file in the system is/Windows/tdywater.gif (the suffix does not affect. PNG can also be used)
The system automatically searches for the following types of files in the Windows directory based on the resolution of the current device:
"Stwater_240_240.gif"
"Stwater_240_320.gif"
"Stwater_320_240.gif"
"Stwater_640_480.gif", etc.
Note:
If none of the supplied images tdywater _ <screenwidth >_< screenheight> and stwater _ <screenwidth >_< screenheight> match the current screen resolution, then the files with the name tdywater.gif and stwater.gif will be used.
Tsk uses two registry values to change the shell color and system color, respectively:
HKEY_LOCAL_MACHINE/software/Microsoft/color/shcolor and
HKEY_LOCAL_MACHINE/system/GWe/syscolor
Both are binary large objects. shcolor contains 41 DWORD values and syscolor contains 29 characters.
We can see these:
<Characteristic type = "HKLM/software/Microsoft/color">
<Parm name = "4" value = "// AA =" datatype = "binary"/>
<Parm name = "5" value = "aaaaaa =" datatype = "binary"/>
<Parm name = "6" value = "gicaaa =" datatype = "binary"/>
<Parm name = "7" value = "aaaaaa =" datatype = "binary"/>
<Parm name = "8" value = "aaaaaa =" datatype = "binary"/>
Parm is the Registry Sequence Value of its items. We can see these sequence values in documentation of Windows Mobile, for example:
Registry order |
Shell color |
Description |
0 |
Color_alert |
Obsolete. |
1 |
Color_accenttext |
Obsolete. |
2 |
Color_caloffhours |
Obsolete. |
3 |
Color_calonhours |
Obsolete. |
4 |
Color_todaytext |
Today screen text color. |
And so on.
HKEY_CURRENT_USER/software/Microsoft/today/skinHere is the path of the selected topic
OEMs Can Change themes from different registry locations:
HKEY_CURRENT_USER/software/Microsoft/today/skin
HKEY_CURRENT_USER/software/Microsoft/today/usestartimage
All values underHKEY_CURRENT_USER/software/Microsoft/today/<themefilename>
HKEY_LOCAL_MACHINE/software/Microsoft/color/shcolor
HKEY_LOCAL_MACHINE/software/Microsoft/color/basehue
All values underHKEY_LOCAL_MACHINE/software/Microsoft/color/<colornumber>
HKEY_LOCAL_MACHINE/system/GWe/syscolor
The above is for hkcu/software/Microsoft/today/umu. Tsk andHKEY_LOCAL_MACHINE/software/Microsoft/color/shcolorIn this case, configure the settings.