接力治愈强迫症,onenote 2016字体防切换!

长话短说,onenote在中文切换英文时,会强迫设置calibri字体,尽管我们设置的默认字体包含英文,而这个字体非常丑,这个恶心的bug据说存在了十几年,害惨了无数强迫症患者。

多亏了LXF同学的逆向研究,治愈了强迫症(全网唯一真正解决方案): https://lxf.me/116?unapproved=815&moderation-hash=cf6f75f95c7e998e75cbc001a0c905f9

然而,最近发现win10上onenote 2016使用上述工具无效(onenote for win10不受影响),研究一下午之后整理出根因及治愈方案如下:

 

通过调试,确认onenote 2016最新使用的是ONMAINW32.dll,不再使用ONMAIN.dll,在作者出新版本之前,可以按如下步骤解决:
1. 使用everything搜索到ONMAINW32.dll,拷贝到普通目录中
2. 在上述普通目录中使用010edit打开上述dll,crt-f搜索“68 02 03”(32位程序)或者“b9 02 03”(64位程序)
3. 修改成“68 00 03”(32位程序)或者“b9 00 03”(64位程序) ,ctl-s 保存
4. 使用修改后的dll替换原来的dll

 

使用上述手工方法,改一次即可,一劳永逸。

 

在这简介下作者的修复逻辑:

 

不想手工改的同学可以直接移步下载自动修复工具: https://github.com/zhmjx/FuckCalibri

原理参照LXF同学,添加ONMainW32.dll的识别。

 

posted @ 2021-05-12 18:50  rec0rd  阅读(1614)  评论(0编辑  收藏  举报