最彻底的关闭Windows10 的更新!

写在最前面,前阵子收了一台笔记本电脑,sony的,固态盘还是触摸屏,小惊喜了一把,结果这个电脑的系统是win,每天自动更新,但是更新失败回退。搜了一些方法,但都不解决问题,终于找到下面这篇最全的。

文章附图

前言:

Windows10的自动更新给工作带来很多不便,想关闭更新很难,我们经过多次尝试,基本找全了与更新有关的条目。

      1、与更新有关的Windows服务,大致就这三个服务。

      Windows update

      Update Orchestrator UsoSvc(更新Orchestrator 服务)

      Windows update medic service(更新医生服务)

      2、组策略

       计算机配置 – 管理模板 -Windows组件 -Windows更新

      3、计划任务

       Microsoft -Windows -WindowsUpdate

以下内容(一、二、三)

一、禁用三大服务(三种方法)

  1、手工操作停止禁用服务。

      进入服务的方式很多,从此电脑右键属性-管理-可以找到。也可以从控制面板进入。

      可以运行services.msc直接进入。

      (1)、先停止Windows Update,后禁用。如图

Windows update.png

找到【恢复】页,改为无操作

Windows update1.png

(2)、关闭 禁止 Update Orchestrator UsoSvc服务   更新适配Orchestrator服务

ORCHESTRATOR.png
ORCHESTRATOR1.png

(3)、停止 禁用 Windows update medic service 更新医生服务

medic.png
medic1.png

这个服务有时会拒绝访问或改不了。你就要参考下面注册表修改了。

2、注册表修改。(如果上面的修改的很顺利,就不必要再做这项的内容,手工修改和注册表修改是异曲同工,互相验证的关系)

   打开注册表,开始 运行   regedit

    (1)、禁用 Windows update(第一个图是禁用更新,第二个图修改恢复里面的“无操作”)

       HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\wuauserv

Windows update2.png
Windows update3.png

(2)、关闭 禁止 Update Orchestrator UsoSvc服务   更新适配Orchestrator服务

            HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\UsoSvc

            这项的改的地方同(1)。只是注册表位置不一样。【UsoSvc】

(3)、停止 禁用 Windows update medic service 更新医生服务

            HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WaaSMedicSvc

            这项的改的地方同(1)。只是注册表位置不一样。【WaaSMedicSvc】

    3、运行命令修改。(这个要求稍微专业点的知识,高手可采用。但要先检查三个FailureActions的值你有没有特殊设置再用。)

net stop wuauserv

net stop UsoSvc

net stop WaaSMedicSvc

reg add “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\wuauserv” /v “Start” /t REG_DWORD /d 4 /f

rem ********   停止 禁用 Windows update

reg add “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\wuauserv” /v “FailureActions” /t REG_BINARY /d 80510100000000000000000003000000140000000000000060ea000000000000000000000000000000000000 /f

rem ********“改服务里面恢复,00-无操作,01-重新启动服务   03-运行一个程序   02 -重新启动计算机   14后面00 00 00 XX”

reg add “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\UsoSvc” /v “Start” /t REG_DWORD /d 4 /f

rem *******停止 禁用 Update Orchestrator UsoSvc服务   更新适配Orchestrator服务

reg add “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\UsoSvc” /v “FailureActions” /t REG_BINARY /d 805101000000000000000000030000001400000000000000c0d4010000000000e09304000000000000000000 /f

rem *******“改服务里面恢复,00-无操作,01-重新启动服务   03-运行一个程序   02 -重新启动计算机   14后面00 00 00 XX”

reg add “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WaaSMedicSvc” /v “Start” /t REG_DWORD /d 4 /f

rem *******停止 禁用 Windows update medic service 更新医生服务

reg add “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WaaSMedicSvc” /v “FailureActions” /t REG_BINARY /d

840300000000000000000000030000001400000000000000c0d4010000000000e09304000000000000000000 /f

rem ******“改服务里面恢复,00-无操作,01-重新启动服务   03-运行一个程序   02 -重新启动计算机   14后面00 00 00 XX”

复制做成BAT文件,以管理员身份运行。

二、配置组策略:gpedit.msc

Windows10家庭版没有gpedit.msc,需要配置一下。首先要新建一个txt文件,打开,在里面输入以下内容并保存:

@echo off

pushd “%~dp0”

dir /b C:\Windows\servicing\Packages\Microsoft-Windows-GroupPolicy-ClientExtensions-Package~3*.mum >List.txt

dir /b C:\Windows\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:”C:\Windows\servicing\Packages\%%i”

pause

将文件后缀改bat,随后右键点击以管理员身份运行,等待加载完成,就可以启用组策略了。

gpedit0.png

成功打开组策略编辑器后,在组策略编辑器中,按顺序点开:计算机配置 – 管理模板 -Windows组件 -Windows更新 ,在右侧配置自动更新设置中,将其设置为已禁用并点击下方的确定保存即可

gpedit1.png
gpedit2.png
gpedit3.png
gpedit4.png
gpedit5.png
gpedit6.png

三、计划任务关闭windows更新:taskschd.msc

tasks0.png

在打开的计划任务的界面中,按顺序点击 任务计划程序库 – Microsoft -Windows -WindowsUpdate,把里面的项目都设置为禁用,能删除也可以删除。

tasks.png

注【高手可操作】:计划任务删除命令是:schtasks /delete /tn “任务名称”   

终于写完了,测试通过。作者:众嘉软件

老毛桃PE工具可以用,别用它装系统

很久没有重装系统了,手上有一个Dell的笔记本,系统恢复分区占了好几个,还不挨着,win11装docker还跑不起来,索性重装,用老毛桃PE进去格了盘,然后加载win11重装,结果装完发现系统被注入很多程序和广告,试着装了一下wsl也有问题。还得用原装win11镜像安装。切记。

Monorepo+federation+defineAsyncComponent构建一栈式主分前端架构

构建一栈式主分前端架构,结合 Monorepo、Federation 和 defineAsyncComponent 是一种现代且高效的开发模式,特别适用于大型项目或微前端架构。

以下是如何将这些技术结合起来实现这一架构的详细步骤:

1. Monorepo(单仓库多包管理)

定义: Monorepo 是一种将多个相关的代码库存储在一个单一的版本控制系统中的方法。它允许你更方便地管理和协调多个项目的依赖关系和版本更新。

工具选择:
•Lerna:用于管理多个 npm 包。
•Yarn Workspaces 或 npm workspaces:用于处理多个包之间的依赖关系。(我选的是pnpm,虽然我觉得pnpm这个词打起来最费劲,但我在.zshrc里面给它设置成了p)
•Nx:不仅支持包管理,还提供了丰富的工具链来优化构建和测试流程。
优点:
•统一的代码风格和配置。
•更容易进行跨项目依赖管理。
•提高了团队协作效率,减少了重复工作。

用Monorepo关键的地方有两个:

1)配置package.json里面的”scripts”,根据调试和打包的组合配置参数。

2)配置dependencies,将共用的部分放到项目根,不过这一点没有上面那条那么重要,属于优化。

  1. Federation(模块联邦)

定义: 模块联邦允许多个独立的应用程序或微前端共享模块,而不需要通过传统的打包方式。实现步骤:
•设置主机应用(Host App):
•使用 Webpack 5 的 ModuleFederationPlugin 配置远程模块。
•示例配置: new ModuleFederationPlugin({
name: ‘hostApp’,
filename: ‘remoteEntry.js’,
remotes: {
remoteApp: ‘remoteApp@http://localhost:3001/remoteEntry.js’,
},
shared: [‘react’, ‘react-dom’],
});

•设置远程应用(Remote App):
•同样使用 ModuleFederationPlugin 暴露模块。
•示例配置: new ModuleFederationPlugin({
name: ‘remoteApp’,
filename: ‘remoteEntry.js’,
exposes: {
‘./Button’: ‘./src/Button’,
},
shared: [‘react’, ‘react-dom’],
});

优点:
•独立部署和开发。
•模块级别的共享,减少冗余代码。
•动态加载远程模块,提升性能。

当然,我用的是vue,上面是钉钉ai助理给的代码,没有仔细看。后面我会整理代码发布到github上供参考。

  1. defineAsyncComponent(异步组件)

定义:defineAsyncComponent 是 Vue 3 提供的一个 API,用于定义异步组件。它可以按需加载组件,从而优化初始加载时间和性能。实现步骤:
•在 Vue 项目中使用 defineAsyncComponent 加载远程组件。 import { defineAsyncComponent } from ‘vue’;

const RemoteButton = defineAsyncComponent(() =>
import(‘remoteApp/Button’)
);

export default {
components: {
RemoteButton,
},
};

优点:
•按需加载,减少初始加载时间。
•提升用户体验,特别是在网络条件不佳的情况下。
综合应用项目结构示例:monorepo/
├── packages/
│ ├── host-app/
│ │ ├── src/
│ │ └── webpack.config.js
│ ├── remote-app/
│ │ ├── src/
│ │ └── webpack.config.js
│ └── shared-components/
│ ├── src/
│ └── webpack.config.js
└── package.json
构建与部署
•构建:使用 Lerna 或 Nx 进行统一构建。
•部署:可以分别部署主机应用和远程应用,确保每个应用可以独立更新和维护。
总结通过结合 Monorepo、Federation 和 defineAsyncComponent,你可以创建一个高效、可扩展的一栈式主分前端架构。这种方式不仅提高了开发效率,还能有效管理和优化大型项目的复杂度。如果你有更多具体的技术问题或需要进一步的帮助,请随时告诉我!(部分内容由AI生成)

实际上,我没有采用ssr的架构,而是采用普通的vite。

实际的目录结构如下:

/apps/one-main
  package.json
/packages/one-basic
  package.json
package.json
pnpm-workspace.yaml

one-main作为我的主应用,one-basic作为的分应用之一,后续还会有one-beau之类的,主应用是作为门户提供最终用户访问的门面的,分应用有两个作用,提供remote-component组件以及对remote-component的单独演示,同时也方便调试。

总体上one-main和one-basic也是同构的,都是采用了https://starchart.cc/xiangshu233/vue3-vant4-mobile这个脚手架,我计划将其中的UI替换为naive-ui,我更喜欢这个简洁的风格。

简单来说,Monorepo是为了这一组代码库方便联调,Federation提供应用间(远程)组件共享,defineAsyncComponent实现动态加载(远程)组件,将远程组件参数化。最终实现的是一个有限灵活度的模板可配置电子书系统。

本方案的代码库:https://github.com/futuremeng/one-momorepo

增加一个新的Title:武汉大学出版研究院兼职研究员

武汉大学出版研究院 https://iop.whu.edu.cn/info/1401/3101.htm

姓名:孟繁永

职务:兼职研究员

研究领域:数字出版,人工智能,数字人文

研究兴趣:利用开源技术搭建低成本轻量化数字出版平台,探索以知识服务为核心目标的数据结构设计、知识加工技术和人工智能应用。

研究成果:

1. 许洁;袁小群;朱瑞;孟繁永. 基于大模型的轻量级智能出版知识服务:理论基础与实现路径[J]. 中国数字出版, 2024 ,v.2;No.2 (01) :25-35.

项目经验:

[主导]语文出版社一书一码融媒体出版平台,2020-2024

[主导]《党建》杂志期刊发行数字化平台,2020-2021

[主导]中国铁建地产集团数据中台与运营可视化,2019-2020

[主导]工商出版社工商法律法规大数据平台,2019-2020

[主导]法律出版社“微版云”数字资源管理云平台,2018-2019

[主导]中国新闻出版研究院希普思会议会展数字化运营平台,2018-2019

[主导]学习出版社《全民经典朗读范本》融媒体出版平台,2017

[主导]中国新闻出版研究院“编辑邦”出版人知识社群,2016-2017

[参与]中国少年儿童新闻出版总社中少快乐阅读平台,2012-2015

[参与]长江出版集团ERP试点,2009-2010