- tt白
-
WindowsXP采用了全新的主题管理内核,其功能非常强大,能够实现的效果非常炫目,但
是居然不支持非官方的桌面主题,
要想使用第三方的主题,就必须通过非官方的办法来解决。
一.必备软件
1.StyleXP
StyleXP是一个第三方的XP桌面主题支持和管理软件,也是目前最好的。它使用的是
WindowsXP的主题内核,并且强化了很多功能,可以导入、选择、更换和管理官方的和非
官方的桌面主题、壁纸甚至登陆界面。
该软件安装之后会在XP中添加一个后台运行的服务StyleXPService,占用1-2MB的内存,
这个服务也就是能够使用第三方主题的基本。另外,它的主程序可以选择两种运行方式,一
种是保持运行在系统托盘里,这种模式在系统托盘里有一个StyleXP的图标,随时可以点击
调出主界面;一种是不消耗资源的方式,主程序平时不运行。建议大家选择第二种方式,因
为这个主程序运行起来可不秀气,占用内存到10-20MB。实际上第二种方式也可以随时运行
主程序来管理主题。
StyleXP是共享软件,自带中文语言,在1.01L版本之后正式支持WindowsXPSP1,1.01P
版本开始支持Windows2003。
2.UxTheme.dll破解版
UxTheme.dll就是XP系统主题支持的核心文件,也就是它让XP无法使用第三方主题。如果你
不想安装StyleXP,那么你可以通过破解UxTheme.dll文件来达到目的。实际上,
UxTheme.dll破解版就是推出StyleXP的TGTSoft在爱好者的强烈要求下放出来的,
Microsoft好像也默认了这种行为,呵呵,真是难得。使用UxTheme.dll破解版之后,无
需任何其他的软件你就可以在XP的显示属性中管理和调用第三方的主题和风格。
下载UxTheme.dll破解版之后,先将X:WindowsSystem32UxTheme.dll重命名,例如改
成UxTheme.dll.bak,然后将破解版的复制过来,重新启动即可。注意,这里还牵涉到
WindowsXP的系统文件保护,请参见下面的内容。
以上两种解决办法只要任选其一即可,各有各的好处,大家看着办吧。笔者个人来言用的是
前者,因为当StyleXP以服务运行时占用的资源非常少,2MB左右,无须修改系统文件,而且
管理起主题来比Windows的显示属性方便得多,而且还可以随意更换和管理Logon界面,不需
要去烦琐地替换系统文件,等等。真正说喜欢用桌面主题的话,不大可能在乎这么一点点资
源的占用。
二.桌面主题的构成
一个XP的桌面主题可以包含好几个部分,风格、壁纸、屏保、鼠标指针、系统声音事件、图
标,除了风格是必须的之外,其他部分都是可选的。风格可以定义的内容是大家在Windows
里所能看到的一切,例如窗口的外观、字体、颜色,按钮的外观等等等等,一个桌面主题里
风格就决定了大家所看到的Windows的样子。
大家可以打开X:WindowsResourcesThemes目录,这个目录就是XP中存放桌面主题的目
录。你能看到有很多xxx.theme文件,你在显示属性的“主题”列表里看到有多少个主题里
就有多少个.theme文件,它就是Windows主题文件,一个桌面主题的总定义文件,它的内
容不多,是文本格式的,以XP的默认官方主题Luna为例,大家用任何一个文本编辑器打开
Luna.theme,可以很直观的看到其内容。
[Theme]部分是定义我的电脑、我的文档、网络邻居以及回收站这几个主要部件的图标,
Luna.theme中MyComputer定义的图标就是X:Windowsexplorer.exe,0,也就是
explorer.exe中包含的第一个图标,没有包含特定图标的主题这里一般都是这个值。这里
即可以指向程序文件,也可以指向DLL文件或者图标文件。
[ControlPanelColors]部分定义的是各个Windows部件如标题栏、窗口背景、文字等的颜
色,这里定义的颜色大部分时候是无关紧要的,因为系统会优先按照色彩方案中的配色显示
,这在后面的部分会讲到。
[ControlPanelCursors]定义的就是鼠标指针了,每一行定义一个指针文件,例如Arrow
定义箭头光标,Wait定义等待光标。Luna中这里是空的,代表使用Windows默认的鼠标指针
,这里的定义必须是具体的.cur光标文件或者.ani动画光标文件。
[ControlPanelDesktop]定义桌面的显示,包括壁纸图片的位置,显示方式,以及是否激
活屏保。Luna中的Wallpaper=%WinDir%webwallpaperBliss.bmp就是大家看得最多的“
菜地蓝天”了:)。这里的ScreenSaveActive=X和下面的[boot]部分
SCRNSAVE.EXE=XXX是对应的,前者管是否允许屏保,后者是屏保的具体地址。
[VisualStyles]就是最关键的部分了,这里指向的就是一个桌面主题的核心部分:
.msstyles可视化外观风格文件,Luna中指的就是Path=%WinDir%
resourcesThemeslunaluna.msstyles,后面会讲到。再往下走就是定义声音事件的了,
和我们在控制面板→声音和音频设备→声音中设置的项目是一样的。
一般来说一个完整的主题基本文件结构就是一个.theme文件和一个放置风格文件等其他文
件的文件夹,在[VisualStyles]部分可以找到这个文件夹的名字。了解了.theme文件的
结构之后,大家就完全可以按照自己的喜好编辑了,只是要确认所有文件的指向都必须是有
效的,否则主题无法使用。
需要说明的是,.theme文件不是必须的,.msstyles风格文件才是。因此,有些主题只有
.msstyles文件,没有.theme文件,一样可以照常使用。只是在显示属性的主题列表中是
看不到的,必须到“外观”中才可能看到。
下面,根据[VisualStyles]中的路径我们再打开Luna文件夹,现在可以看到
luna.msstyles风格文件了。.msstyles是一个桌面主题的最主要的部分,它的内容一般包
含了几乎大家所有在Windows里看到的一切,包括窗口、工具栏、按钮等等的颜色、背景图
案、立体效果、字体之类,它基本可以确定一个主题的效果。有兴趣的朋友可以用
StyleBuilder这个也是由TGTSoft出品的专门编辑风格文件的工具打开来看看。就了解
.msstyles的重要作用了。这就是为什么有很多主题就只有这一个文件却能够实现非凡的效
果。这里有一点很重要,就是.msstyles文件只能放置在X:WindowsResourcesThemes
目录的子目录下,并且所在的子目录名称必须和本身的文件名(不包括后缀名)一致,例如
Luna.msstyles必须放在X:WindowsResourcesThemesLuna下才有效,大家可以试试将
目录或者文件其中一项改名,就会发现该风格已经无法正常使用了。
大部分主题目录里还会有一个Shell目录,这里还是以官方主题Luna为例,和
Luna.msstyles在一起的就有一个Shell目录,打开Shell目录能够看到三个子目录,分
别是Homestead、NormalColor、Metallic,正好分别对应Luna主题中的三个色彩方案:
橄榄绿、默认(蓝)、银色。三个目录每个下面都有一个shellstyle.dll文件。
shellstyle.dll的作用比较简单,它定义的是资源管理器中左边的公共栏的样式,包括位
图、字体和颜色配置,例如关闭和打开“详细信息”的按钮,以及大家打开音乐文件夹时文
件列表右下角背景中显示的音符图案等。一般一个主题中有几个色彩方案就会有几个
shellstyle.dll文件,每个shellstyle.dll的内容都是配合所针对的色彩方案的,不尽
相同。
和.theme文件一样,Shell文件夹和shellstyle.dll都不是必须的,很多主题就没有
这个内容。即便将已有shellstyle.dll删除也不会对主题产生太大的影响,只是在该色彩
方案下它所定义的内容会变成系统默认的。大家完全可以尝试在一个色彩方案中用其他色彩
方案的shellstyle.dll文件替换,甚至可以自己用ResourceHacker之类的工具自己编
辑里面的位图和颜色、字体定义等,有时候可以达到意想不到的效果。
三.桌面主题的使用
上面已经讲了主题的基本文件结构,在了解了文件结构之后再谈安装主题就容易多了。
大家从网上下载的桌面主题各式各样,有的只有几百KB,有的可能有几十MB,就是因为它们
所包含的内容不一样。有的只有一个.msstyles风格文件,有的带了几个色彩配置文件,
有的带了.theme文件,有的带了鼠标指针、壁纸、声音事件等,笔者甚至见过一个包含了
所有内容压缩之后都有上百MB的巨型桌面主题。
下面就讲讲各种不同的主题该如何安装。
给大家一个小提示,在正常的情况下.theme文件和.msstyles文件都是有系统默认文件
关联的,也就是说双击这两种文件系统都会自动在显示属性中打开,大家可以利用这一点在
安装之前先预览该主题或者风格,当然,如果主题还包扩了其他文件的话就要注意其他文件
的路径是否对头了,否则是无法正常预览的。
第一种情况:有.theme主题文件
这种情况是最容易安装的了,只要保持原主题的目录结构,将.theme文件和文件夹复制到
X:WindowsResourcesThemes目录下就完成安装了。举个最简单的例子,大家在网上下
载了一个主题,假定这个主题名叫“Naco”,那么安装后应该是这样的目录结构:
X:WindowsResourcesThemesNaco.theme(可无)
X:WindowsResourcesThemesNacoNaco.msstyles
X:WindowsResourcesThemesNacoShellxxxxshellstyle.dll(可无)
.....................
复制好之后然后在桌面上点击右键,选择“属性”打开显示属性窗口。因为有.theme主题
文件,所以在主题列表中可以看到该主题,选择主题名称,点击应用,Windows就会自动切
换到该主题的显示了。如果这个主题有多个色彩方案的话,打开“外观”,在“色彩方案”
列表中可以看到可选的色彩方案,选每一项内容都将在上面的预览框中显示实际效果。
第二种情况:没有.theme主题文件
还是这个例子,假定主题名叫“Naco”,这个主题只有一个Naco.msstyles风格文件和
一个shell文件夹,shell文件夹下面有几套色彩方案,或者连shell文件夹都没有,那
么首先请在X:WindowsResourcesThemes目录下建一个子目录,名字一定要叫做“Naco
”,前面说过了,这个目录的名称一定要和风格文件名相同,然后将Naco.msstyles文件
和Shell目录复制到这个子目录里,目录结构是这样的:
X:WindowsResourcesThemesNacoNaco.msstyles
X:WindowsResourcesThemesNacoShellxxxxshellstyle.dll(可无)
.................
打开显示属性窗口。因为没有.theme文件,所以在主题列表中是看不到“Naco”主题的,
所以要到“外观”页去,正常的话你应该在“窗口和按钮”列表中能找到“Naco”这一项,
这里实际上就是风格的列表了。选中“Naco”,如果这个风格有多个色彩方案,那么在下面
的色彩方案列表中就会有多于一项内容,选每一项内容都将在上面的预览框中显示实际效果
。点击右下方的应用,就能够将风格和色彩方案应用到当前的Windows了。
前面已经讲过了.theme是总定义文件以及它的结构,所以,大家可以自己创建一个
.theme文件来针对没有.theme文件的主题。
在“外观”的“窗口和按钮”中选择没有主题文件的风格,点击应用,此时Windows将切换
为新指定的风格,切换到“主题”页,此时主题列表中会显示为XXX(更改),点击“另
存为”,将新的.theme文件保存到X:WindowsResourcesThemes目录里去,当然这里
你也可以保存到任何位置,只是保存到系统的目录将更加便于管理。保存之后你就已经建立
好一个新的主题了,以后只要选择这个新建的主题就可以使用相应的风格。
在这里有一个技巧,看过第二节就知道,.theme文件里是有很多定义部分的,所以,在保
存.theme文件的时候会将当前系统使用的墙纸、鼠标指针、图标、屏保、声音等各种定义
全部保存到新建的这个主题文件中间去,因此,大家完全可以不需要去手动编辑.theme文
件的各项定义,而直接利用这个技巧建立自己个性化的主题。譬如,你可以先将桌面墙纸设
为自己最喜欢的图片,调出自己最喜欢的鼠标指针,使用自己最喜欢的声音事件和屏幕保护
等等等等,将各个部分调整好之后,“保存为”一个新的主题文件,这样,以后只要选用这
个主题文件就能够一步到位了。;)当然,必须注意的是因为在保存主题文件的时候各种资
源都将使用绝对路径,例如鼠标指针和声音文件的引用位置是来自于另外一个主题的目录,
因此,一旦某一个文件的实际位置发生了变动,那么再用这个主题的时候Windows就会因为
找不到主题里的文件而提示出错,因此,最好的办法是建立一个不容易变动的目录放置这些
需要用到的文件,然后再建立主题文件,就不容易发生错误了。
四.桌面主题应用的延伸:图标
使用主题较多的朋友会发现很多桌面主题里面包含了Windows主题之外的内容,例如很多很
漂亮的成套成套的图标,但是不管怎么切换主题总是没看到这些图标在系统中出现(除了少
数几个能够在.theme文件中定义的之外)。实际上,这是因为Windows主题并不支持图
标主题的使用。而这些成套的图标集,一般都是要用到另外的软件来使用的。
在这里,就要给大家推荐一个应用比较广泛的图标主题软件:IconPackager。现在发布的包
含有图标主题的Theme中,最常见的就是IconPackager图标主题了。
IconPackager是一个集图标管理、图标转换、图标主题制作为一身的强大Windows图标主题
工具,从软件名称就知道,它最大的功能就是图标包的应用上。很多XP桌面主题包里所带的
图标集都会加入IconPackager图标主题定义文件,能够用IconPackager打开,很方便地一次
性替换所有图标。这种替换方式对系统没有任何影响,实际上只是在Windows的图标缓存中
进行替换,随时可以恢复。下面就简单介绍IconPackager以及它的图标主题的用法。为了方
便,下面简称IconPackager为IP。
先做个名词解释
[d=.icl文件]IConLibrary(图标库)的简称,一种使用图标编辑软件(例如
Microangelo)制作的16位WindowsDLL库文件,只不过后缀名不同而已,专用于图标的打包
使用,里面除了图标什么都没有,优点是能够将大量图标压缩成一个文件便于使用和交流,
而且不需要解包就可以直接使用里面的图标。WindowsXP默认就支持这种图标库格式。
[/d]
IP格式的图标主题有两种发布方式,第一种也是最常见的方式是图标+.iptheme定义文
件的形式,这种形式发布的图标主题一般都在一个单独的目录中,图标可能是一大堆.ico
文件,也可能是单个的.icl(上面解释啦)图标库文件,还有一个最重要的.iptheme文
件。不得不再做一个名词解释啦
.iptheme是IP专用的图标主题定义文件,就像第2节里说的.theme主题文件一样,也是文
本格式,可以用任何文本编辑器打开,它的内容一看就懂。
[SoftwareInfo]部分是IP软件的说明,不用管它,下面的[PackageInfo]就是图标内容
的定义了,例如:MyComputer=%ThemeDir%02.ico意思是“我的电脑”的图标定义为图标
主题目录下的02.ico文件,前面是系统中某个显示图标的位置,后面是具体定义的图标文
件。也可能是:MyComputer=%ThemeDir%01.icl,1,这样的定义指向的就是一个.icl图
标库文件,在逗号后面跟的数字1就是指图标库文件中的第一个图标。
如果你的系统中安装了IP,只要双击.iptheme文件IP就会自动启动然后打开这个图标主题
,再点击IP窗口左边的“Icons&Cursors”,就可以在右边看到该图标主题内定义的各种
具体图标了,分为桌面、开始菜单、文件夹、驱动器、其他、文件类型、鼠标指针、快速启
动栏等八个类,基本涵盖了Windows中所有的图标,甚至是很多第三方软件的文件格式一样
找得到。对于不满意的图标,双击图标项就可以更改,或者选中图标项之后点击右边的
Change...,找到想要的图标确认就会在IP中载入了。点击右下方的Apply即可应用当前
的图标主题,稍等几秒系统的图标主题就替换完成了。所替换图标的多少由图标主题中包含
的图标多少来决定,如果图标主题图标类型很全的话,基本上整个系统内的图标变得都会让
你认不出来了。要注意的是在IP中图标定义是绝对路径,也就是说IP中定义好的图标一旦
.ico文件或者.icl文件被移动了,在IP中就无效了。
IP的另一种主题发布形式是单独的一个.ip文件,这个文件是IP专用格式的图标压缩包,
里面包括了该图标主题中的图标文件以及IP的图标主题定义文件,用其他软件是打不开的,
使用起来和.theme一样,只要双击就会在IP中载入,不过IP会先将这个压缩包解压到自己
安装目录中的themes目录下再载入,原来的.ip文件位置不会影响到图标主题的使用。
另外,IP图标主题中也可以包含鼠标指针,定义方式和图标是一样的。大家找个比较完整的
IP图标主题研究一下定义文件就明白了。
本教程只是讲图标主题的应用,至于IP的其他功能和应用大家就可以自己研究了,总之IP是
一个强大而又好用的图标工具,不过它的使用是一点都不难的。用它做一个自己的图标主题
,发放给自己的朋友,保证裤裤的。
一套好的桌面主题加上一套好的图标主题,绝对可以让整个系统焕然一新。
五.桌面主题应用的延伸:系统文件的修改
有了以上四步,相信大家的Windows已经有点让人认不出来了吧,下面要讲的就是更进一步
的应用:修改系统文件,把Windows变得不像Windows。
其实有很多的UI是保存在一些可执行文件里的(.exe.dll.ocx等),比如按钮图标、动画
、菜单文字、程序和对话框的布局等等,编辑这些文件可以让你随心所欲的改变你的
Windows操作界面,这并不像想象中的那么难。
备份!既然是系统文件,相信大家都不敢随便删掉的,所以一定要做好备份工作,而且还应
当清楚的标明该文件的地理位置。一旦修改失败,立即启动到DOS,还原备份文件。再有就
是,一个好的习惯就是改完一个文件,就备份、覆盖、重启、检验,再改下一个,最忌的是
改了一堆文件,同时覆盖,结果出了问题,却不知道到底是哪个文件改坏了。请记住:在编
辑任何系统文件之前,备份之!
ResourceHacker,相信不少人都已经知道这个优秀的免费软件了,最为让人称心的是它有
完美的汉化。
PEResourceEditor,同样是免费软件,而且代码公开,但可能需要两个delphi6的运行
库(vcl60.rarrtl60.rar)。完全不比ResourceHacker逊色。
eXeScope,共享软件,可以编辑16位的Binary文件。
ResBuilder,TGTSoft(就是做StyleXP的那家)出品的一个功能强大的免费软件。其主页
介绍为:"WithResBuilder,skin/logon/shellstyledesignershaveasimplewayto
alteralphamaskbitmapsinaresourcefile.ResBuilderauto-converts32bit
BMPstoPNGsandbacksoyoucaneditthe8bitalphamaskinyourfavorite
editor.GoodforLogonUI.EXEfiles.Alsohasatextandhexeditor."。另外,它还
能编辑被集成到可执行文件里的.xml.ini,十分吸引人。
HEX编辑器
既然有UltraEdit,我就不说别的了;)
文件替换
我们知道,当文件被使用时它是不能被替换的,而大多关于UI的系统文件都是在启动时就被
启用了的,这就为我们替换系统文件带来麻烦,下面的两个软件可以帮助我们。
CopyLock,Windows9x/2k,免费软件,"isasmallprogramthatallowsthe
replacementofoneormanyfilesthatarecurrentlyinuse(e.g.thesystem
fileslikecomctl32.dll.)"
Replacer,Windows2k/XP,免费软件,"isaneasytousesystemfileexchangerfor
XP/2k.Itusesadraganddropinterfacetoobtaininput."
其他
ResThief,免费软件,当把一个可执行或其他Binary文件拖到它上头后,它会把其中的所
有资源文件展开并放到一个目录里。
SmartView,免费软件,"isafreeWindowsprogramthatallowsyoutoselecta
directoryandyoucanviewallthebitmaps,metafiles,iconsandiconsheldin
executablesasthumbnails."
3.修改介绍16位和32位文件
前面提到的几个资源编辑器都能修改32位文件,但我们依然会碰到16位的文件(特别
是在Windows9x系统里),这时候就只有用eXeScope了。
编辑文件
通常的方法,只是简单的从文件中提取资源文件(位图、动画等等)、编辑、替换到文件里
即可。或是修改对话框内的布局,修改文件内的文字等等,都可以在编辑器内简单操作就可
完成。位图(.bmp.ico等)、动画(.avi等)的编辑工具可以选用自己习惯的来。
需要注意的是所修改的资源文件的文件大小、颜色索引、透明颜色的指定等等,一个比较好
的方法是编辑原始的资源文件。
通常的,透明颜色会是紫红色(R,G,B:255,0,255),但有时是在位图的背景色里。
经常会碰到一个位图文件里包含了几个不同功能的按钮的图,而且在另外的图里可能还有对
应的鼠标悬停和鼠标按下的图,一个较好的方法是编辑原图。
对于XP,我们会看到有不少位图是有Alpha效果的(如:explorer的工具栏内的按钮),一
个有效的办法是当用资源编辑器提取文件后,立刻改名为.png(原来为.bmp),然后用
photoshop之类的软件编辑保存,再用MsPaint打开并另存为.bmp即可。(注:此法未经本
人测试)
4..dll文件内的HTML编辑!除了位图、对话框等,还有一些东西是以HTML保存的,如IE
的"about"(shdoclc.dll,section23)和"friendlyHTTPerrormessage
pages"(shdoclc.dll,section2110)。ResourceHacker能很方便的编辑这个的,编辑后
点击"编译脚本"就可以了。但对于替换HTML里引用的.gif/.jpg等图,则不适于用Resource
Hacker,而eXeScope则能胜任愉快。另外,你完全可以用.gif动画来替换任何.gif。
参考资料:http://zhidao.baidu.com/question/10108397.html
- 苏州马小云
-
没有打开注册表中主题的开通