ExplorerPatcher:还你一个高效的工作环境

Windows 11的UI已经被喷烂了。我也知道你很讨厌这个操作系统的UI,但是我来向你介绍一款开源软件,可以完美解决你的问题,免除你纠结是否降级系统的苦恼……

今天我们来看一个拯救世界的开源项目。这么说有夸大其词的嫌疑,但是在我看来,这个软件起码拯救了我的强迫症,开发者急我所急,痛我所痛,实际用起来让我十分畅快和舒服,它就是ExplorerPatcher,一个帮助你解决Windows 11缺少对开始菜单和任务栏个性化问题的软件。

阅读之前

在阅读这个文章之前,我希望你对Windows的用户图形界面有一个基本的了解。

什么?你用Windows几十年了,觉得自己已经足够了解了?那没事了,就权当我带你复习一下基础知识,而且为了防止在看文章的时候因为对词语的理解不同引起混淆,也有必要明确一下这些东西叫做什么名字。

Win11任务栏

任务栏(

从左往右:“开始”菜单、搜索按钮、任务视图按钮、快速启动栏

从右往左:托盘区(“显示桌面”按钮、通知、日期和时间、控制中心、语言栏、托盘图标、天气)

微软的原罪

微软是一个自大又傲慢的公司,我们这篇文章依然以这个句子开头。微软在尝试定义一切的同时,拒绝承认自己的问题,搞开源都是表面上繁荣,实际还是要用Windows狠狠恶心你一下……好了,我就不批评Windows了,微软是什么企业我想大家都知道了。但是最离谱的事情就是,你在批评微软的产品的同时,你还不得不直呼真香,因为开发者作为特殊的群体,对操作系统往往有自己的需求,而Linux虽然看起来是最好的选择,但实际使用体验却总不尽人意。所以……Windows,一个让人又爱又恨的操作系统,还是目前开发者的主要生产力装备。

Windows到底哪里这么不堪?老旧的模块和代码、和系统耦合的文件管理器、恶劣的国产软件生态、推广、Windows欢迎屏幕上的旅游广告和bing链接、莫名其妙的推广通知、性能很差的NTFS系统、强行更新的Windows补丁……好吧,你厌恶这一切,“俺也一样”。在我看来Windows现在最恶劣的一个问题莫过于Windows 11的任务栏和“开始”菜单,这一点我想你也应该深有感触。 这个UI我是真的欣赏不来,我都看不出来我打开了哪个软件。

Win11的UI展示

莫名其妙的新任务栏

做出“更新Windows 11”的决定,是一个很严肃的事情。这意味着你准备用全新的操作系统了。我们总是喜欢新的东西,尤其是软件——似乎新版本总比老版本优秀,这个观点已经深深扎根到很多开发者的潜意识里了。你不要急着反驳,Neboer自己就深受其害。所以当知道Windows 11发布之后,Neboer迫不及待的下载了升级软件,然后成功的升级成了Windows 11。

Windows 11的所谓“性能的提升”,我并没有太多的感觉到,但是这个新任务栏实在是太抢眼球了——这是macOS吗?默认居中的“开始”菜单、整齐排列的快速启动项目、和快速启动傻傻分不清楚的小软件图标……这还是Windows吗?我有点愣,随后打开了设置,准备把这个陌生的界面好好改造一下。

结果……我愣住了,这设置里可以把菜单调到左侧,也可以调任务栏的图标大小,但就是不能调是否“堆叠图标、始终隐藏标签”。这个功能的缺失直接导致Windows 11的任务栏上显示的所有软件图标都一样大小——是的,不管是没有打开的“快速启动”、还是已经打开的“软件窗口”,这两种类型的图标在视觉效果上几乎没有差别,只有一条白线和浅一点的背景色略有不同。切换软件的时候,在任务栏上点击小图标非常容易迷惑,忘记哪个窗口对应哪个图标,并且这个堆叠实在是不能忍受,需要先浮动显示缩略图才能分辨出哪个是自己想要的窗口,实在是不能忍受!最关键的是,小图标点击起来实在费劲,很容易误触,对鼠标用户非常不友好。

到这其实已经绷不住了。Windows 11的新任务栏实在是让人难以琢磨。虽然在Windows 10里默认的任务栏也是一样的,但为什么到了Windows 11这里就不能调了?而且Windows 11并没有提过自己不允许用户主动设置任务栏为Windows 10的样式,这是不是也算是一种欺诈呢?

忍无可忍的“开始”菜单

作为一个深深扎根在人们对PC使用习惯中的一个设计,Windows的“开始”菜单绝对是行业标准级别的存在。我认为Windows 10的“开始”菜单是非常好的设计,最左侧是一些关键的文件夹、设置、关机等按钮,然后一栏是已安装的应用列表,最右侧一栏是你可以自定义的磁贴,半透明的毛玻璃效果很赞。整个设计浑然一体,既方便又美观,功能繁多但整齐,是Windows 10中比较吸引人的一个亮点,在诸多测评中,用户都对这个新的“开始”菜单给予了很高的评价。

用户觉得好用,那就砍掉吧(大雾)!对于新改的Windows 11的“开始”菜单,我没有太多想说的,只是觉得使用体验糟糕。首先是不能自定义磁贴了,不能方便的拖动快捷方式的位置,然后需要点一下才能进到应用列表,外观的圆角也不是很喜欢,而且不喜欢浮动的菜单位置,我认为“开始”菜单应该紧贴任务栏……以上种种,感觉就是不舒服,不喜欢,我认为应该也有人和我一样这么想。Windows 10的操作理念已经深深影响了我们对PC的使用方法的认知,所以我觉得这种操作习惯值得被尊重。

在Windows 11上恢复高效率的工作环境

截止文章原稿写好,现在已经有两个商业软件可以做到这一点——Start11和StartAllBack。他们的作用和这个开源软件是一样的——让Windows 11的任务栏和“开始”菜单变得更加可以自定义,功能更丰富,界面更美观,操作更符合习惯。

我体验了一下Start11,说实话我觉得这个软件做的虽然好但是还不够好,因为以下几点:

  • Start11的“开始”菜单应该是自己做的,并不是原生的Win 10“开始”菜单。在使用上还是有点差距的。这就意味着Start11需要付出更多努力来维护这个功能,并且,它的模仿我认为十分拙劣,因为动画都没做好,磁贴的透明度和大小也很奇怪。可以从下面的图中看出一二,实际上右侧的磁贴动画比较生硬。

Start11的开始菜单是拙劣模仿

  • Start11有一些显示bug,而且卸载器存在问题。总之这个软件的bug很多。

Start11的显示bug

对于StartAllBack,似乎并没有同样的问题了,StartAllBack可以设置任务栏的样式为“不隐藏标签”,也可以文件管理器的但StartAllBack不能设置“开始”菜单为Win10风格,只有win7的风格可以设置,这也是不可以忍受的。

看得出来,“开始”菜单是一个很大的问题,对于Start11和StartAllBack来说,Windows 10风格的“开始”菜单都是一个棘手的问题,我认为二者都没有彻底解决。

而且,对系统托盘区的自定义程度也是一个问题。Windows 11的“控制中心”按钮就设计得很好,可以在一个设置里快速调整电脑的所有基本设置选项,比如切换多显示器的设置为“扩展”还是“仅第二屏幕”等等。这个我希望在切换任务栏之后予以保留,而显然Start11和StartAllBack在这里做的都不够好——没有让你自己决定去留的设置方法。

同时,Start11是付费软件,在国内你可以从数码荔枝上购买,单个设备需要花费35元,StartAllBack的购买单价是26元,这些软件在国外购买都会贵一些。

另外,无论是StartAllBack还是Start11,都不很容易卸载。尤其是Start11在卸载的时候会报一个错误“invalid uninstall control file”,这个问题是因为Start11在这个xml文件的“文件名”中插入了一个奇怪的字符,你需要打开这个文件,然后搜索"productnamewithmark",你会发现文件中那个奇怪的“00”字符。这个问题可以参考这篇文章解决。

这就引入了一个很严肃的问题,你当然可以很容易的获得这些软件的破解版,但是如果用破解的话,就意味着你必须承担潜在的风险。所以你希望买正版,国内代理是否可以获得完整的技术支持也是未知的。同时,这些软件的权限都很大,而且因为需要安装系统服务、注入关键进程等等原因,它们有很多的理由绕开杀毒软件的监控,这是否安全也是未知的。作为开发者,你可能不愿意将系统美化这类工作交给如此的商业软件。

所以,我们迫切需要一个开源解决方案来帮助我们做到这一点,于是,ExplorerPatcher就出现了。

拯救世界的ExplorerPatcher

我从几个月前就已经知道这个软件的存在了。我深知社区对微软的容忍度,所以大概知道类似的工作必然有人完成。ExplorerPatcher只是众多Windows Taskbar Tweaker中的一员,它是属于功能比较全面、完成度比较高、开发时间比较早的那一批软件,也是比较热门的项目了。

ExplorerPatcher简称ep,可以完成上面软件提供的所有功能,包括状态栏堆叠设置、“开始”菜单设置、“搜索”按钮、“小娜”按钮、“天气”组件、“任务”按钮、文件管理器的管理工具风格选择。甚至ExplorerPatcher还提供了一个方法可以把自己注册成一个“shell extension”,以此管理右键菜单。不得不说,相比于前面提到的商业软件,ep的功能真的是太多了,而且ep的设置也非常明确,完美诠释了一个程序员对开源工作的态度。

下面这张图展示了ExplorerPatcher的“开始”菜单。画面中鼠标正在拖动一个磁贴。

ExplorerPatcher的开始菜单

同时,ep是一个无话可说的开源软件。整个软件在GPL协议下完全开源,同时自动在Github Actions上构建,自动发布,可以规避闭源软件带来的安全问题,非常适合开发者等对使用的软件有一定安全和认可需求的人来使用。我自己已经用了这么久,一般不会出很大的问题,实际使用体验非常稳定。

ExplorerPatcher的安装方法(大陆版)

是的,这个软件并不容易安装。本来ep应该是非常好装的一个软件,它的开发者为它编写了一个功能全面的安装器——ep_setup.exe,本来,在世界上任何地方,只要有这一个文件,用管理员权限运行,就可以直接安装成功,体验patch之后的explorer了。可是由于在中国大陆访问Github的速度很慢,所以实际使用软件的时候,只运行安装器并不能安装所有组件,而这个安装器又没有提供“支持系统代理”的功能,所以比较麻烦。

实际在安装的时候,可能需要操作一下——用个proxifier或者proxychains之类的软件。我个人比较推荐的是proxychains——这个软件比较省心,在命令行里运行proxychains.exe ep_setup.exe就可以了,完全没有任何问题。proxifier并不是个好软件,不过鉴于Windows上的透明代理的实现难度,我觉得也不能对这个软件太过苛责。未来我可能会专门写一篇文章,讲讲Windows上透明代理的那点事。不过这个话题已经是老生常谈了,就不是很优先了。

如果下载失败,那么可能explorer.exe永远不会启动了。这个时候需要按快捷键Ctrl+Shift+Esc启动任务管理器,手动关闭ep_setup.exe的进程,然后手动启动explorer.exe,然后再执行ep_setup.exe /uninstall来卸载这个软件。如果你没有卸载,你会发现状态栏依然正常运行,但是“开始”菜单则不能正确显示。这是因为“开始”菜单的系统文件并没有下载成功。所以还是卸载之后再开代理安装一遍吧。

ExplorerPatcher的配置方法

ep哪里都好,就是全英文有点受不了——当然只有界面是全英文的,实际上软件是考虑到本地化了的,比如你可以正常使用中文的Win10风格“开始”菜单。作为一款C语言开发的、纯为功能而实现的软件来说,ep相当的不错,但是就是一些说明没有本地化。ep的“设置”功能选项非常多,而且字体小,整体排列得密密麻麻,读这个东西就好比读阅读理解中的问题一样,让我这种非英语母语者比较头痛。所以在这里我整理出一份食用指南,供大家参考。

右键单击任务栏,点击“属性”,就可以看到ep的设置菜单了。在这里我不说太多,就说说一些大家可能最关心的部分——系统托盘、任务栏、“开始”菜单和资源管理器有关的设置。

ep设置截图

右键任务栏空白处,点击“属性”,会弹出ep的设置页面。ep的第一页设置就是“任务栏(Taskbar)”。选择任务栏风格,然后看看“show *** button”。我个人的选择是“show search button”,而取消“show task view button”。

第二个选项是“系统托盘(System Tray)”,在这里取消“show touch keyboard button”,并打开“Control Center Button”。这个控制中心是很有用的功能,它是托盘区的“齿轮”图标,可以调节快捷设置。

第三个选项是“文件管理器(File Explorer)”,建议选中“Disable Windows 11 Context menu”,因为我觉得Win11的右键菜单虽然开启速度快,但是过分简单了,反倒解决不了太多问题。同时不建议打开“register as shell extension”,这个功能对大多数用户来说意义不大。然后一定要把“control interface”调整成“Windows 10 Ribbon”,这也是我最喜欢的。这个选项控制着文件管理器的上方“快捷操作”菜单,Windows 10的Ribbon菜单功能丰富,而且选项卡安排合理,我认为比Windows 11的优秀。

第四个选项是“‘开始’菜单(Start Menu)”,这是重头戏,如果你Explorer Patcher安装成功,而且你喜欢Windows 10的“开始”菜单的话,你一定要把“Start Menu Style”改成“Windows 10”,而且别忘确保“App list”是打开的状态。这样才能体验到完整的、接近原生Win10的“开始”菜单风格。ExplorerPatcher的“开始”菜单的设置并不是在最初版本中一开始就有的,而是在之后的版本中才添加进来。我开始用这个软件的时候,还没有“开始”菜单的设置方法。这个功能可以说是ExplorerPatcher与Start11/Start All Back的本质区别,ep的“开始”菜单应该是直接以Windows 10的dll为基础,进行适配修改,所以功能几乎和Win10完全一致。各种动画效果、毛玻璃磁贴等等都一应俱全,使用体验和Win10“开始”菜单别无二致。

注意,如果你改变了带有星号的选项,那么你需要点击下面的“重启Explorer”来让选项生效。有些选项的带有两个星号,那么就需要仔细阅读下面的说明了。这里需要指出ep的“注入右键菜单”的功能。这个功能可以让你调整三个不同的设置:“沉浸式菜单(immersive menus)”、“导航条(navigation bar)”和“搜索条(Search Bar)”。

在Github上还存在一个项目,是国人汉化的ExplorerPatcher。我个人不建议使用这个版本,因为二手开源可能存在潜在的问题,比如更新速度慢,比如翻译引入了潜在的bug之类。如果可能的话,还是忍一忍英语,毕竟也不是看不懂,权当是提高自己的专业英语阅读水平了()。

ExplorerPatcher的使用体验

很棒!ExplorerPatcher可以列入“改变Neboer日常生活的开源软件”中去了!本来我打算如果实在忍不了Windows 11的设计可以换回Windows 10,不过这次不用了!我自己也在给身边的人推荐ExplorerPatcher,这真的是难得一见的好软件,完美契合了Windows 10用户的传统使用体验,并且甚至可以给Windows 10用户使用,让他们体验Windows 11的新UI!这简直太棒了。

不过ExplorerPatcher也不是永远万能的。更新Windows之后,微软一般会顺带更新explorer,或者诸如“开始”菜单等的机制——需要在视觉上引起用户的注意,我们真的更新了——万恶的微软。这个时候对ExplorerPatcher的稳定性就提出了一定的挑战。之前曾经有许多次,Windows更新之后,ExplorerPatcher开始出各种bug。最后只能暂时卸载,等问题解决。

当然也不是所有的问题都如此致命——这次Windows的更新KB5014019之后,ExplorerPatcher可能打开之后会出现黑屏的bug,就是任务栏整个变成了黑色底色,但是如果你鼠标划过某个图标,该图标还是会被点亮。这个问题的解决方法其实也很意外——切换Windows任务栏样式为“Windows 11”,然后再切换回Win10,就可以解决这个问题了。

文档、用户和开发者

ExplorerPatcher确实面临着一些困境,而我想这个问题也是阻碍开源软件发展的最大问题之一,那就是——“后继无人”。

ExplorerPatcher的开发者是Valinet,很明显,ep是相当天才的工作,开发者不但需要对Windows有非常深入的了解,同时还需要对逆向工程、程序和服务开发、调试、注入等ctf技能有深度的把握,同时作为一个拥有完整生态的开源项目,ep在文档方面做的也很好,用户文档齐全,可以解决许多问题。但是缺乏项目本身的开发文档,甚至连“why this works”都没有写,给人一种开发者是从梦里得到了启示然后醒来就把代码抄下来的感觉。

这个项目的维护难度过高,导致应者寥寥。不过从用户的总体评价上看,大家非常感谢Valinet的工作。但是感谢归感谢,整个项目几乎就是孤军奋战,只有V一个人开发,开发速度非常不稳定,我经常担心哪天这个项目不维护了。当开源项目和一个开发者深度绑定的时候,这个项目的生命其实也和这个开发者绑定起来了。开源软件的短命也是由此而来的。这个项目值得支持,开发者应该得到赞助。

另外,用户交流也是一个问题。因为防止不重要的issue泛滥,项目关闭了issue功能。另外V在论坛里提到,Github的issue区是存在缺陷的,不能够“只允许开发者提交issue”。其实我想说你们做个机器人自动删不就完了()不过问题不大。后来的问题才是重点——他们把讨论的forum都关闭了。理由也是类似用户提交的bug不符合要求,有很多人什么也不懂就来问,把forum作为聊天之类的地方,占用了开发者的精力之类。

可想而知的是,这个项目有多么的割裂:用户基本来自全球——而且数量庞大,并且软件解决的问题太普遍了,而软件安装和传播的方法又过于简单——只需要运行一个安装程序,这个程序十分容易复制传播。这就导致社区中提问的用户大多都比较小白,大量无关痛痒的问题淹没了真正需要警惕的bug,可能真的让开发者苦不堪言。

ExplorerPatcher将何去何从

虽然对一个开源软件最有发言权的应该是它的开发者,但我想在这里普通的用户也能够看出一点端倪。其实,最近几次的Windows更新中,ExplorerPatcher的适配性都不是特别好,总有莫名的bug出现,而且ep的代码提交速度也越来越慢了,可能也和软件越来越成熟有关系——没那么多需要增加的功能了。再加上安装程序无法在中国大陆直接运行,并且开发者已经关闭了Github论坛,用户都不知道去哪里报错,这个项目简直可以说是已经“快凉”了,这让人非常着急。但是,值得欣慰的是,开发者似乎还没有彻底放弃这个项目,可以在最近的提交记录里看到V依然在更新代码,以适配新的Windows版本,所以直到文章写完,ExplorerPatcher也依旧可以在我的Windows 11电脑上正常运行。可以说,是大家的需求召唤了ExplorerPatcher的到来,而天才开发者V就是召唤师(???)()。我也希望情怀和使命感还在,开发者可以继续维护这个项目,和微软斗智斗勇。

其实,我个人更愿意看到的,应该是微软去解决这个问题。但是我大概理解微软可能永远不会解决这个问题。毕竟是新的操作系统,就应该让人有不一样的使用体验。如果你实在无法割舍Windows 10的UI,那么还是建议你不要升级Win11——不要升级,前面不是家!

ExplorerPatcher的未来无疑是充满风险并令我担忧的:不容乐观。开发者不可能和微软比赛维护Windows 11,而且微软强制所有用户自动更新系统,开发者始终慢微软一步,最终受到影响的只能是所有的用户——更新系统之后,ep损坏了,还需要卸载,并且养成的习惯又不得不纠正过来,再或者就需要选择类似Start11之类的替代品软件,但如果试用期过了,可能大多数用户就选择直接购买这个软件了,ExplorerPatcher终究可能会落到无人问津的下场。或许在这个问题上,像Start11之类的软件用买断制的商业模式可能会更让用户安心一点,毕竟商业公司总不会轻易放弃自己的用户——这个关系比个人开发者牢固得多——但是当然也会带来上面提到的种种问题。

最大的问题就是:ep的开发难度不像正常的开源软件,对维护者的开发水平提出了很高的要求,这就导致了项目很容易后继无人,最终的下场很有可能就是,V在短暂的宣读自己的离场说明之后,退出ep的开发,留下哀鸿遍野的用户——包括我——被Windows 11淹没不知所措。

虽然作为穷b,但我还是给V捐款了,象征一点点心意,希望这个软件的寿命比我预想的要长一些吧。

写在最后

ExplorerPatcher真是一个令人唏嘘不已的软件,我感觉写完了这些都有一种记录了英雄斩杀恶龙的故事——杀不完的恶龙,写不尽的代码!不得不说我都没有想到这个软件的开发竟然可以完全由一个人来完成,我对V的工作的佩服之情溢于言表。突然想到曾经某人在国内大放厥词地定义“最大的‘公益’”,我只能付之一笑,什么是以小人之心度君子之腹,这大概就是了。

开源是程序员的终极浪漫之一,如果屏幕前的你觉得自己可以助ExplorerPatcher一臂之力,那么请务必带上你的代码去加入这个伟大项目的开发,就当是Neboer求求你了,我已经离不开这个软件了!

我也会与V积极沟通,争取早日弄懂这个软件的原理,尽我自己一份力量,做一些力所能及的事情。当然,我也希望社区能真正开发并维护一个棒极了的开源游戏——别言必称SuperTuxCart了,那个不好玩!