Windows 11 小组件完全魔改指南(insider 版)

2021-07-15 01:44:06 +08:00
 codehz

首先说明,这里介绍的方法不一定能在正式版中使用,微软可能会采取行动封堵这个操作。

这里先不评价 Win11 的小组件实用性在哪里。。就给那些希望深度定制内容的人一个操作指南吧。

本文只面向有一定基础知识的玩家,魔改有风险,注意常备份


我们知道,win10 的新闻和兴趣功能使用的是 windows.msn.com/shell (中国为 windows.msn.cn/shell ),所以以此类推,win11 的小组件用的就是 https://windows.msn.com/newsandinterests 了(

因此如果想要深度定制内容,就可以从劫持这几个网址入手

虽然理论上只要第一个就够了 劫持内容可以通过 hosts 来做到(使用代理的朋友请自行解决),直接在 hosts 文件写入

127.11.45.14 windows.msn.com
127.11.45.14 windows.msn.cn
127.11.45.14 localhost.windows.msn.com

(注意 127.0.0.0/8 整个都是本地回环,为了避免与 127.0.0.1 上的其他服务冲突,可以选择一个独特的地址)

然后考虑到目标页面是 https 页面,我们可以通过自签名证书+安装根证书的方法绕过,这里采用 mkcert 的方案

mkcert --install
mkcert windows.msn.com windows.msn.cn localhost.windows.msn.com

得到证书和私钥文件后就可以放到自己喜爱的 http 服务器里部署了

然后再打开 widgets 就可以拿到自己定制的页面了

什么,你说还是原来的?那就是因为缓存的关系,不能及时刷新(还有 service worker ),可以通过删除 %LocalAppData%\Packages\MicrosoftWindows.Client.WebExperience_cw5n1h2txyewy\LocalState\EBWebView 目录来强行移除缓存(操作前终止小组件相关进程)


然后再来说说这玩意有啥实用性:全局呼出( win+w,触屏用户可以侧滑呼出 ),几乎在所有界面可用(除了某些独占显示的游戏),定制后可用作第二个开始菜单 /启动器

7090 次点击
所在节点    Windows
7 条回复
ysc3839
2021-07-15 02:29:44 +08:00
看上去这里用的是 Edge WebView2,可能想办法打开开发者模式的可玩性更高。
oott123
2021-07-15 11:17:32 +08:00
@ysc3839 研究了一下,注册表这么设置一下,设置完了之后杀掉 widgets.exe ,再打开小组件界面,按 F12,就有 devtools 了。

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Dsh]
"EnableDevTools"=dword:00000001
Scirocco
2021-07-15 12:10:07 +08:00
@oott123 #2 感谢,非常有帮助

然后现在发现这个网址好像改成了 https://windows.msn.com/windowsnewsplus/
ikas
2021-07-15 18:04:41 +08:00
相反的,你也可以把他的 webcontent 拷贝出来,然后随便起个 http server,启动一个禁止跨域检测的 edge,就可以完整跑他的了...看他的项目结构,以后应该是可以添加组件的...
thetbw
2021-07-16 11:50:08 +08:00
最简单的方法就是直接把微软的小组件干掉,自己整个 webview 开发个出来也用不了多久,或者现成的应该有的吧
codehz
2021-07-16 15:12:21 +08:00
@thetbw 这样说也没错,但是问题在于这玩意是内置的,而且可能还会随着后期优化而改善体验和修复 bug,而且现在来看至少调试体验还不错。。就解决一个证书和 hosts 的问题就可以和一般的网页 app 一样用了
(然后这个模糊效果确实不错,electron 用的那个模糊 api 性能就一团浆糊,还不支持圆角)
huhuime
2021-10-05 20:29:46 +08:00
@codehz electron user32 那个本来就是系统 api 实现,微软的问题一直不修,现在更糟糕了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/789589

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX