Windows 合集

🚩必做

  • 关闭实时保护
  • 关闭自动更新
  • 定时创建还原点

如果系统驱动有问题、难以修复而且没有创建还原点,全新安装新系统也可以,Windows 不会抹除所有数据,受影响的只有注册表和 C:\Windows 文件夹下的数据。用户文件夹会被备份到 C:\Windows.old 中,QQ 和微信聊天数据、ssh/clash 等配置文件夹可以从其中复制过来。程序需要重新安装。

通过任务计划程序创建还原点

参考这个 博客

开启系统还原

可以在 Windows 开始菜单搜索中搜索“还原”,找到“创建还原点”,也可以找到“系统属性 > 系统保护”,这两个方式都能来到同一个功能面板,对系统驱动器启用系统还原即可。

创建任务计划

可以在 Windows 开始菜单搜索中搜索“计划”,找到“任务计划程序”进入。

点击右侧的“创建计划任务”,选择“不管用户是否登录都要运行”,启用最高权限,配置别动(不要选 Windows 10!会导致配置失效)。别急着点确定,翻到第二页“触发器”,选择“启动时”,点击确定。

创建触发器之后应该和下面一样:

接下来选择操作,选择“启动程序”,程序填 powershell.exe(不用浏览,PATH 里面肯定能找到),参数填:

-ExecutionPolicy Bypass -Command "Checkpoint-Computer -Description "Startup RestorePoint " -RestorePointType "MODIFY_SETTINGS""

接下来在“条件”选项卡里面关闭唤醒时启动(这样是不是每次开机才跑一次而不是每次唤醒就跑一次?)和不充电时不启动,然后点击确定,输入账户密码(可能时因为设置了更高权限运行)即可创建。因为我创建的位置是在根,所以能在下图找到我计划的任务。

可以重启电脑检查一下是否有新的还原点创建。

组策略和注册表的关联

组策略和注册表的内容是分别存储的,修改组策略并不会直接修改注册表。仅仅是在组策略刷新时,策略文件中的内容会被同步到注册表中。而且,组策略只维持自己的缓存,从不读取注册表中的值!

当注册表不经过组策略编辑器被改动时,如果想要使用组策略管理相关项,可能需要先显式设置组策略中的项目为另外一个值,然后再改过来。

https://superuser.com/a/1192458

Local group policy settings (which is what I believe you are referring to in your post) are stored in registry.pol files located in C:\Windows\system32\GroupPolicy. These files overwrite the corresponding keys in the registry every time the system performs a group policy refresh. The editor never actually reads the registry to see what settings it contains.

其中 C:\Windows\system32\GroupPolicy 是一个隐藏文件夹。

家庭版下强行开启组策略编辑器,操作不生效?

编辑组策略后观察 registry.pol 文件,发现数据的确被写入了。比如启用“Windows 更新不包括驱动程序”,对应的文件如下:

其中 01 00 00 00 表示“已启用”。这里看上去是一个字符按照两个字节存储,而整数又是 4 字节小端存储。

使用 gpupdate /force 强行刷新组策略,在 事件查看器 > Windows 日志 > 系统 中,能看到:

已成功为此计算机处理组策略设置。已经检测到并应用了 1 个组策略对象的新设置。

但策略设置并没有被同步到注册表中。

Windows 家庭版启用组策略编辑器

可以用脚本启用,但是不推荐!虽然能编辑,但内容并不生效。可以转而使用注册表来完成相同的功能。网上流传的脚本如下(需要管理员权限):

pushd "%~dp0"
dir /b %SystemRoot%\servicing\Packages\Microsoft-Windows-GroupPolicy-ClientExtensions-Package~3*.mum >List.txt
dir /b %SystemRoot%\servicing\Packages\Microsoft-Windows-GroupPolicy-ClientTools-Package~3*.mum >>List.txt
for /f %%i in ('findstr /i . List.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"
pause

更改 Windows 用户文件夹名称

首先取消 OneDrive 对于桌面的同步!防止旧用户名被删除后还被桌面使用。

https://www.elevenforum.com/t/enable-or-disable-built-in-administrator-account-in-windows-11.709/

https://www.tenforums.com/tutorials/89060-change-name-user-profile-folder-windows-10-a.html

然后还要修改 USERNAME 环境变量(需要在控制面版里面找到用户)。

是否要创建软链接?==如果不创建软链接,很多东西就需要重新安装,包括 Obsidian、VS Code、Notepad3、miniconda3 和安装在用户上的字体。==还有很多注册表项目……所以最好还是留个软链接。

效益?不如重新创建一个用户。

为 Java 注册关联文件

使用 Java_HOME,然后在环境变量中引用。环境变量可以从开始中搜索进入。Jar 文件的关联需要使用 cmd(powershell 不行)的 assoc 命令和 ftype 命令。如果有旧的关联,需要换一个名字!不要用同一个名字来关联!

命令效果
ftype jarfile查看该程序类型当前的关联
ftype jarfile=清空当前的关联
ftype jarfile="path/to/javaw.exe" -jar "%1" %*关联该程序为使用 jar 打开
assoc .jar查看该文件类型当前的关联
assoc .jar=jarfile和名称为 jarfile 的项目连接起来

另外,在 Java SE9 之前,windows 上的 GUI 程序不会随着显示屏缩放设置缩放。所以我升级到了 Java11。

开机输入密码后进用户界面慢

可能是暂存目录太大了,影响系统工作。用 cd %temp% 进入目录,用 explorer . 打开这里,然后删掉里面所有的文件(可能需要显示隐藏文件)并重启。由于缓存目录过期会自动清理,所以有时候会有一种过一段时间开机又正常了的假象。上次清理的时候缓存目录有 10G。下面两个帖子提到了这一点:

https://www.reddit.com/r/techsupport/comments/gh0v9e/long_black_screen_before_login_windows_10/

https://www.tenforums.com/performance-maintenance/155024-startup-takes-too-long-winlogon-init.html

WiFi 有网络但是还是有小地球

可能是 DNS 服务器 ping 不通,可以试一下 ping。如果 ping 不上,看看能不能把静态配置的 DNS 服务器改成自动获取。

安全中心闪退

https://m.ithome.com/html/570853.htm

高 CPU 问题

Windows Defender

改注册表、组策略里面有个二级选项可以关闭 Windows defender 的实时保护(不太好找)。

上一级的 关闭 Mircosoft Defender 防病毒 看上去是无效的?

如果通过注册表修改,设置下面这个项目:

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection
DWORDDisableRealtimeMonitoring
1

实时保护关闭之后还要在 Windows Defender 页面关掉其他几个相关项目,否则实时保护会自动打开。如果不在组策略中关闭实时保护,则重启后实时保护会自动打开,所以这两件事都要做。

Microsoft 兼容性遥测

最全的方法

这个看上去可能靠谱一点:

这个是微软 Windows 10 的兼容性检测助手,

  1. 按下“Win+R”,输入 services.msc 打开服务。

  2. 进入到服务列表找到 Connected User Experiences and TelemetryProgram Compatibility Assistant Service 服务项

  3. 打开服务,将服务进行禁用。

WSL localhost 在 Firefox 上连接很慢

这张图给出了原因。

防止 Windows 更新在更新的时候降级驱动

如果是专业版,就编辑组策略:

还可以修改注册表:

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate
DWORDExcludeWUDriversInQualityUpdate
1

但是这样做不是很保险,我记得我有个设备设置了这个但是驱动还是被降级了。最好是直接永久停止 Windows 更新检查。

Word 文档关闭时显示“正在保存”很长时间

在隐私设置中关闭全部联机体验。会使得自动保存不可用,频繁手动保存即可。

MSYS2 的 ls 无法正确显示中文文件名

可能是环境变量 LANG 没有被设置。设置它的值为 zh_CN.UTF-8 即可。(en_US.UTF-8 也是可以显示中文的,这就是没有设置的问题,可以用 locale 检查。)

LC_ALL 的优先级大于 LANG,默认是没有设置的,也不需要管。

⚠关闭 Windows Search 中的联网建议

有时候会在联网建议的时候卡住,导致不能正常搜索本地软件。

参考这个: https://www.reddit.com/r/pcmasterrace/comments/1adtmhz/comment/kk43t9o/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button

HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows 表项中增加 Explorer 项目,然后在其中增加一个名为 DisableSearchBoxSuggestionsDWORD (32-bit) Value,将其值改成 1。

2025 年 1 月 8 日:上述方法好像没用,还是出现了无法搜索本地软件的情况。打开任务管理器,右键然后重启 Windows Explorer 就好了。不知道如何永久解决。