Fournoas 分享《This weird Windows 11 bug drastically speeds up File Explorer》:

按 F11 全屏再恢复 Windows 资源管理器窗口,能显著提速。多方验证,真实可信,原因未知,非常神奇。

用 RunDLL32.exe 命令实现 xdg-open

xdg-open 是 Linux 下的一个命令,可以调用对应的程序来打开目标文件,等同于在文件管理器中双击打开该文件。Ubuntu 用户可以通过执行 sudo apt install xdg-utils -y 来安装 xdg-open 命令,这个命令的用法也很简单:

xdg-open { file | URL }

遗憾的是, Windows 系统并没用提供类似的命令,不过我们可以通过 Windows 自带的 rundll32.exe 命令来实现一个类似功能的脚本。

RunDLL32.exe 用来加载指定的 DLL 文件并调用指定的导出函数。用法如下:

……

用 Dnspooh 自建安全 DNS 服务器

Dnspooh 是一款使用 Python 开发的开源 DNS 代理/中继,支持 DoH 和 DoT 协议。用户可以将 Dnspooh 部署在本地,借助它可以让不支持 DoH 和 DoT 协议的客户端应用或操作系统使用安全的 DNS 服务,从而避免被运营商或网管之类的中间人劫持或嗅探。

除此之外, Dnspooh 还支持可插拔中间件用于扩展软件功能。 Dnspooh 内置了几个比较有用的中间件:缓存中间件用于加速访问;黑名单中间件用于屏蔽域名和 IP 地址; Hosts 中间件用于自定义解析结果;日志中间件用于记录解析记录、监控应用行为;规则中间件提供更加灵活复杂的操作。

……

Fournoas 说:

Edge浏览器更新后,地址栏右侧会出现一个很恶心的“发现”按钮,在命令行中运行下面命令(或者直接快捷键 WIN+R 运行),然后重启浏览器就可以禁用这个按钮了:

powershellREG ADD HKLM\Software\Policies\Microsoft\Edge /v HubsSidebarEnabled /t REG_DWORD /d 0
发送 Ctrl+C 事件终止 Windows 控制台进程

偶然在 Nuitka 的代码中发现一个未被触发的 BUG 。问题代码位于 OnefileBootstrap.c 的 cleanupChildProcess() 函数中。这段代码中第 654 行的 GenerateConsoleCtrlEvent() 总是返回 FALSE ,导致子进程无法收到 CTRL-C 信号。不过由于 Nuitka 的代码中只有 cleanupChildProcess(false) 调用,因此这个 BUG 正常情况下不会被触发。不幸的是,本人 fork 了 Nuitka 的项目 Nuitka-winsvc 正好触发了这个 BUG 。Nuitka-winsvc 为 Nuitka 增加了编译为 Windows 服务的选项。当停止服务时,需要向子进程发送 CTRL-C 信号来优雅结束子进程

删除 Windows 10 内置应用

以 Win 10 内置应用 XboxGameCallableUI 为例。在 PowerShell 命令行中执行:

powershellget-appxpackage *XboxGameCallableUI*

可以看到返回如下信息:

Name              : Microsoft.XboxGameCallableUI
Publisher         : CN=Microsoft Windows, O=Microsoft Corporation, L=Redmond, S=Washington, C=US
Architecture      : Neutral
ResourceId        : neutral
Version           : 1000.19041.1023.0
PackageFullName   : Microsoft.XboxGameCallableUI_1000.19041.1023.0_neutral_neutral_cw5n1h2txyewy
InstallLocation   : C:\Windows\SystemApps\Microsoft.XboxGameCallableUI_cw5n1h2txyewy
PublisherId       : cw5n1h2txyewy
IsResourcePackage : False
IsBundle          : False
IsDevelopmentMode : False
NonRemovable      : True
IsPartiallyStaged : False
SignatureKind     : System

其中 NonRemovable 的值为 True,这意味着如果我们直接用 get-appxpackage *XboxGameCallableUI* | remove-appxpackage 命令是无法删除该 package 的。

必须需要修改系统配置才能实现删除内置应用。在一切开始前,我们需要准备如下工具:

……

如何修改「OneDrive - Personal」文件夹名称

新版本OneDrive会自动覆盖注册表设置,此方法已不再适用。

微软 OneDrive 分为企业版和个人版。先前都统一显示为「OneDrive」,但是在某次系统升级后,个人版会加上后缀,变成了一个超级长的名字:

onedrive

通过修改注册表可以去掉这个后缀。运行 regedit.exe 打开注册表编辑器,定位到 HKEY_CLASSES_ROOT\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6} 分支,右键新建字符串值,键值名称为 LocalizedString,值为 OneDrive,当然也可以修改成自己喜欢的名称。

……

Windows Shell Folder

什么是 Windows Shell

Windows Shell 是 Windows 操作系统的用户界面。具体地说,用户在登录后看到的桌面、开始菜单、任务栏,以及打开资源管理器看到的操作界面都属于 Windows Shell 的一部分。Windows Shell 实现了一套树形组织结构,称作 Shell Namespace。它包含两种基础对象,即「文件」和「文件夹」, 「桌面」是 Shell Namespace 的根对象。

文件夹是 Shell Namespace 树中的节点和容器,它可以包含子文件夹对象和文件对象。Shell Namespace 中的对象可以表示文件系统对象,也可以是虚拟对象,例如,控制面板、回收站、我的电脑(此电脑)、桌面、网络等对象。这些特殊的虚拟文件夹称作 Shell Folder。

……

Windows 包管理工具

几乎每个 Linux 发行版都会自带包管理工具,比如 CentOS 的 yum、Debian 家族的 apt、Arch Linux 的 pacman 等;此外,FreeBSD 系统有 pkg 和 ports;macOS 上有 Homebrew。而 Windows 长久以来都是通过安装包来进行软件分发部署,官方没有提供任何包管理工具,且 Win 10 自带的微软应用商店一直被人诟病。直到 2020 年,微软通过抄袭另一款开源 Windows 包管理工具 AppGet 之后,开发出了一款叫做 WinGet 的包管理工具,但微软的这款工具只能运行在 Win 10 系统上。令人遗憾的是,由于微软的抄袭行为,AppGet 的作者已经停止维护这个项目。

……

Windows 常用软件清单

个人日常使用的 Windows 软件清单。并非推荐,仅供参考