Windows Themes外观视觉样式故障汇总

最近笔者在微软新闻组先后看到若干个 Windows 外观视觉样式(Windows Themes)显示不正确的问题,并在回复帖子时提了不少建议。笔者打算以此为题写一篇 Windows Themes 故障汇总,总结八个比较有代表性的引起 Themes 显示异常的问题。这里所说的 Themes 包括 Windows XP/Server 2003 的外观样式、Windows Vista/Server 2008/Windows 7 的 Basic 样式以及 AERO 样式。

★ 如果 Windows 无法应用任何 Themes、只能选择类似 Windows 2000 的经典外观:

1.系统服务 Themes 没有开启。

系统服务是最常见的引起 Windows 无法应用 Themes 的原因之一,特别是 Windows Server 系统,默认不开启此服务。以管理员权限执行 %SystemRoot%/system32/SERVICES.MSC 打开“服务”设置,将 Themes 服务开启、并将其运行方式修改为“自动”即可解决(Windows Server 2003)。

Windows Server 2008 仅开启 Themes 服务依然不够,还需要通过“管理工具”-“服务器管理”-“打开或关闭功能”-“添加功能”,手动添加默认没有安装的“桌面体验(Desktop Experience)”组件方可。微软官方提供的参考信息为:

http://support.microsoft.com/kb/946397

笔者认为,Windows Server 2008 既然默认不安装“桌面体验”,其实完全没有必要预设一个根本无法生效的 Themes 服务,此服务完全可以在安装“桌面体验”时再添加。

2.视觉样式文件夹 Windows/Resources/themes 中的资源受损。

如果在选择 Themes 的列表中无法找到部分或全部选项,可能是视觉样式文件夹 Windows/Resources/themes 中的相关文件丢失或受损。

Windows XP 家庭版/专业版、Windows Server 2003 默认内置有 Luna;
Windows XP Media Center Edition 2005/Tablet PC Edition 2005 内置有 Luna 及 Royale Energy Blue;
Windows Vista/Server 2008 内置有 Aero。我们可以从其它相同版本的 Windows 计算机中直接复制 Windows/Resources/themes 文件夹进行修复。

3.与 Windows Shell 相关的若干系统文件受损或需要重新注册。

除了 Windows/Resources/themes 中的资源外,Windows Shell 相关的若干系统文件如果受损也可能会引起无法应用 Themes,甚至可能会在控制面板中打开“显示”属性时出现 RUNDLL32 运行错误。这些相关的系统文件包括 Explorer.EXE、Shell32.DLL、User32.DLL、Desk.CPL、ThemeUI.DLL 等,解决方法是 SFC /SCANNOW 检测并修复。

如果确认所有系统文件都没有损坏,但依然无法应用 Themes 或在打开“显示”属性时出现 RUNDLL32 运行错误,可以尝试执行 REGSVR32 MMSYSTEM.DLL 重新注册一下此文件。少数极端情况是除了 MMSYSTEM.DLL 外,还有其它系统文件也需要重新注册(此现象一般发生在查杀病毒后发现无法应用 Themes),此时可以将如下语句:

for %1 in (%WinDir%/system32/*.DLL) do REGSVR32.EXE /s %1

保存为 .BAT 批处理并运行,重新注册一下 system32 中的所有 .DLL 文件。但除了 Windows 系统文件外,某些位于 system32 的第三方 .DLL 也将被一并重新注册,可能会引起一些不必要的麻烦。

此外,控制面板的“显示”属性出现 RUNDLL32 运行错误的另一种可能是显示驱动程序配置不正确,如果以安全模式启动 Windows 可以正常打开“显示”属性,可能需要回到正常模式重新安装显示驱动程序。特别是有时在 Windows Vista 或以上版本中如果可以应用 Basic 样式、但却无法应用 AERO 样式,则很有可能是显示驱动程序配置不当或显卡本身不支持 DirectX 9 所致。

4.与 Themes 相关的若干注册表项受损。

除了系统文件的受损或需要重新注册外,某些与 Themes 相关的注册表项受损也可能引起无法正常应用 Themes。这些注册表项主要有:

HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/ThemeManager
HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Themes
HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/ThemeManager
HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Themes
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Themes

(其中最后一条是 Themes 系统服务的注册表项,如果之前已经发现 Themes 服务损坏无法启动,可能是此注册表项受损所致)

解决方法是从其它相同版本的 Windows 计算机中导出上述注册表项为 .REG 文件,复制过来并导入注册表,然后重新启动计算机。

除了 HKEY_CURRENT_USER 与 HKEY_LOCAL_MACHINE 之外,如果 Windows 登录界面的 Themes 遇到问题,还可以修复 HKEY_USERS/.DEFAULT 中的相关设置。例如我们知道 Windows Server 2003 默认是只使用经典样式的,虽然可以开启 Themes 服务并在控制面板中应用 Themes,但只限于当前登录的用户帐户、对 Windows 登录对话框无效。此时我们便可以在将当前用户帐户的 Themes 设置好之后,将 HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/
ThemeManager 的所有数据原样照搬至 HKEY_USER/.DEFAULT/Software/Microsoft/Windows/
CurrentVersion/ThemeManager,这样即可将当前用户帐户应用的 Themes 应用至登录对话框。


★ 如果 Windows 可以应用内置的 Themes、但无法应用来自第三方的 Themes:

在默认的系统设置中,Windows 仅允许应用系统内置的有限的几种 Themes。为了突破 Windows 的限制应用来自第三方的 Themes,通常有两种方法。

5.重新替换破解版的 UxTheme.DLL。

Windows 默认对 Themes 的限制来源于 Windows/system32/UxTheme.DLL。网上有很多解除限制的破解版 UxTheme.DLL 可供下载,将破解版的 UxTheme.DLL 通过故障恢复控制台、多重操作系统或 Windows PE 等复制至系统文件夹,替换源文件即可解除限制。

6.重新安装第三方 Themes 管理工具。

StyleXP 等第三方 Themes 管理工具可以以自建立的服务全面接管 Windows 的 Themes 服务,通过第三方软件的服务即可直接应用来自第三方的 Themes,因此我们可以重新安装相应的第三方 Themes 管理工具以突破 Windows 无法应用第三方 Themes 的限制,例如 StyleXP。

★ 如果 Windows 可以应用 Themes、但 Themes 却显示残缺不完整:

这个问题主要出现在一些版本较早的 Windows 2000 甚至 Windows 9X 旧版程序中,某些旧版程序是无法全部或部分应用 Themes 的。

7.使用 eXeScope 为旧版程序设置“XP 样式”。

eXeScope 提供了为应用程序设置“XP 样式”的选项。某些不支持 Themes 的旧版程序经过 eXeScope 修改后可能可以支持 Themes,但不是全部,特别是 Windows Vista 的 AERO 样式,某些旧版程序经过修改可能可以支持 Basic 样式、但需要 DirectX 9 渲染的 AERO 却始终无法生效。

我们可以以 eXeScope 打开旧版应用程序的相关 .EXE 或 .DLL 文件,选中工具栏提供的“XP 样式”后保存修改。如果 eXeScope 显示此文件“早已是 XP 样式”后依然无法应用 Themes,那么这样的旧版应用程序可能就无法解决了。

8.解除不支持 Themes 的旧版程序附加在 Explorer.EXE 中的扩展插件。

某些比较“黏人”的旧版程序不仅自己无法应用 Themes、而且还会为 Explorer.EXE 也附加上很多扩展插件,这样可能会连带着引起 Windows 的某些系统界面也无法应用 Themes。我们可以下载运行 ShellExView 对 Explorer.EXE 的扩展插件进行排查:

http://www.nirsoft.net/utils/shexview.zip

运行后选中可能无法应用 Themes 的非 Microsoft 第三方扩展插件,通过右键菜单 Disable Selected Items 将其禁用即可,重新启动 Windows 后观察受影响的 Windows 系统界面能否恢复正常。

(0)

相关推荐

  • Win7系统开机提示Windows驱动器未就绪的故障原因及解决方法

    故障分析: 主要原因应该是不存在软盘驱动器或驱动器未安装,找到故障原因后,win7 32位系统只要将软盘驱动器禁用就可以了. 解决措施: 1.右键点击计算机,选择管理,打开计算机管理窗口: 2.在计算 ...

  • word2007如何修改外观主题样式?

    我们在打开word2007的时候,默认都是淡蓝色这个样式,看的时间长了,我们估计也想换换主题样式,下面介绍下如何修改主题样式,不会的朋友可以参考本文! 步骤 1.点击word中的左上角功能按钮,进入功 ...

  • 怎么给电脑设置在窗口和按钮上使用视觉样式

    怎么给电脑设置在窗口和按钮上使用视觉样式呢?一起来看看具体操作步骤吧.1. 首先打开电脑,找到桌面上的计算机图标,双击打开.2. 进入计算机页面后,点击上方的打开控制面板选项.3. 进入控制面板页面后 ...

  • Auto CAD 2013 简单三维教程:[10]视觉样式

    不同视觉样式的不同,通过改变不同的视觉样式,可以更快地编辑图形,找到所需要的点 操作方法 01 调用"视觉样式"工具 02 二维线框 03 三维线框视觉样式 04 三维隐藏视觉样式 ...

  • Windows 7下0xc000000e错误故障的解决

    Windows 7下0xc000000e错误故障的解决 操作方法 01 当电脑遭遇带突击事件会导致Windows系统的引导程序无法正常工作,Win7下无法正常启动并且同时报告"0xc0000 ...

  • Windows 7系统常见小故障以及排除方法

    与XP相比,Windows 7的易用性和安全性有了很大提高,因此很多朋友都在使用Windows 7,不过系统用久了,这样那样的问题也随之而来,下面列出几个经典的Windows 7操作小故障及排除技巧, ...

  • 用户最希望Windows 10能加入的功能汇总 win10用户最期待的功能

    为了对下一个版本的Windows进行改进,微软在最近发布了Windows10技术预览版测试项目,让用户可以提前试用自己的新系统,并提供反馈意见。那么哪些是用户最希望Windows 10能加入的功能呢? ...

  • Windows 98启动与关闭故障解决

    作者: 谢浩 Windows 98的界面友好、功能强大,但在使用中也常会出现各种各样的问 题,如系统不能正常启动或关闭。这有时是因为系统文件感染了病毒,我们可以 借助杀毒软件轻松解决。但更多却是因为系 ...

  • 在windows下Ctrl组合快捷键大全汇总

    Ctrl+W是一个键盘组合快捷键,我们按这个组合键也不会出现什么大问题,只是会关闭当前打开的所有网页,如果您正在观看网页视频、查看网页资料的话,最好不要按该组合快捷键,否则会关闭所有网页需要重新找到打 ...