我只是好奇为什么微软不允许在他们的 Windows 操作系统中使用自定义主题。这个基础从 XP 时代就存在了,自从他们在 Windows XP 中正式引入图形主题以来,他们就禁用了此功能。我知道如何绕过限制,并享受我的主题,我只是好奇为什么故意禁用如此有用的功能?Windows(RT 除外)允许安装任何软件,并且具有替换整个 EXPLORER shell 的内置功能,为什么他们会阻止未经他们签名的主题?
答案1
Windows 明确规定了系统将做什么以及您编写的程序必须做什么,从而使扩展变得容易。Microsoft 高度重视向后兼容性,如果他们要记录制作自定义主题的接口(通过替换themeui.dll
),他们就不能在每次发布时都破坏它,这会严重限制他们迭代 UI 设计的能力。
自 XP 以来,每个版本的 Windows 都对 UI 各个部分的整体外观和操作进行了重大更改。在多次迭代中维护兼容的契约将是一场噩梦(小例子)。
除此之外,shell 编程非常困难。你不仅要预测自己代码的失败,还要预测加载到的进程的代码的失败。你被迫使用的其他模块有趣的 事物和全局状态,这通常会使你的生活变得困难。而且由于崩溃报告说的是“explorer.exe”,所以你的任何代码故障都会让微软蒙羞。
如果这些还不足以说明技术原因,那么改变外观会进一步分裂“Windows”身份,就像 Android 目前面临的身份危机一样。它使培训变得复杂,最终对显著提高系统的可用性没有任何帮助。