606 字
3 分钟
PCL2 隐藏主题的注册表解锁
声明
- 建议先通过 PCL2 正常方式完成主题解锁,再参照本文进行尝试,以尊重软件作者的劳动成果
- 使用本方法所造成的任何异常,请自行承担风险;建议提前做好相关备份
- 本文仅供技术交流,如涉及相关权益争议,请联系删除1
NOTE该方法无法解锁「秋仪金」主题
PCL2 启动器作者:龙腾猫跃
操作步骤
步骤一:下载 PCL2 dev0.4.4 版本
任意包含加解密测试功能的版本均可。该版本可以在 QQ 群或爱发电获取

步骤二:生成解锁密文
-
打开 PCL2 dev0.4.4,切换到“下载”页,找到“加解密测试”功能。

-
在第一栏输入全部主题 ID,以竖线
|分隔:0|1|2|3|4|5|6|7|8|9|10|11|12|13|14
-
在第二栏已填入的识别码前添加
PCL
-
点击“加密”按钮,复制输出的字符串

步骤三:修改注册表
-
点击“开始”按钮或按下 Win 键,输入“注册表编辑器”,然后点击“打开”操作项

-
定位至路径:
HKEY_CURRENT_USER\Software\PCL找到
UiLauncherThemeHide2
-
双击
UiLauncherThemeHide2,将其“数值数据”修改为刚复制的字符串,然后点击“确定”按钮
步骤四:重启 PCL2 客户端
大功告成!重启 PCL2 后,隐藏主题应当已经出现在主题列表中

原理与发现
PCL2 将已解锁主题以密文的形式存入注册表 HKEY_CURRENT_USER\Software\PCL\UiLauncherThemeHide2 中。
加密采用 DES,密钥为 PCL + 设备识别码,调用形式为:
ModBase.SecureRemove(cipherText, "PCL" + ModBase.GetUniqueAddress());解密 UiLauncherThemeHide2 的数值数据后,内容为以竖线分隔的已解锁主题 ID,如 0|1|2|3|4。
因此将全部主题 ID 加密后写入即可解锁(「秋仪金」除外)。
官方开源仓库中的 ModSecret.vb 写道:
'由于包含加解密等安全信息,本文件中的部分代码已被删除所以无法直接从官方源码中获取 SecureAdd / SecureRemove 等加解密函数。
所幸的是,我想起之前为解锁「极客蓝」主题曾下载过 PCL2 dev0.4.4,该版本内置了“加解密测试”功能,正好可用来直接生成解锁密文。
参考资料:
Footnotes
-
请通过 B 站私信联系我,我会连同 B 站上的同篇内容一并处理。 ↩
PCL2 隐藏主题的注册表解锁
https://ancryel.github.io/posts/pcl2-theme-unlock/