无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 6017|回复: 49
打印 上一主题 下一主题

[分享] 分享一个删除非必需的APPX(包括Defender)的简单办法

    [复制链接]
跳转到指定楼层
#
发表于 2025-7-1 17:40:57 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
本帖最后由 hlowld 于 2025-7-3 19:24 编辑

对离线镜像(假设在z:)执行以下代码,安装后,所有用户都不会有白名单以外的APPX(包括Defender等NonRemovable为True的系统应用)
偶然发现插入代码好像要吃字符,导致脚本无效,改为直接发文本。

:removeproappx
powershell -NoProfile -Command ^
"Get-ProvisionedAppxPackage -Path 'z:' |" ^
"Where-Object { " ^
"  $_.DisplayName -notmatch 'ShellExperienceHost|StartMenuExperienceHost|Client\.CBS|immersivecontrolpanel|PrintDialog|VCLibs'" ^
"} |" ^
"Remove-ProvisionedAppxPackage -Path 'z:'" >nul 2>nul


reg load HKLM\sof z:\Windows\System32\config\software >nul 2>nul || goto :eof
set "exclude_list=ShellExperienceHost StartMenuExperienceHost Client.CBS immersivecontrolpanel PrintDialog VCLibs"
for /f "tokens=9 delims=\" %%a in ('reg query "HKLM\sof\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\InboxApplications"') do (
    set "should_delete=1"
    for %%# in (%exclude_list%) do (echo %%a | findstr /i "%%#" >nul && set "should_delete=0")
    if "!should_delete!" equ "1" reg delete "HKLM\sof\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\InboxApplications\%%a" /f >nul 2>nul
)
reg unload HKLM\sof >nul 2>nul
goto :eof


对于Edge,在线系统用老版本安装包执行卸载,暂时没找到简单好用的离线卸载方法。不太愿意用删除注册表和文件的方案,感觉容易出错,对系统版本的兼容性也不高。
:removeedge
if exist "%~dp0edgesetup.exe" (
for /f "tokens=1 delims=\" %%i in ('dir /B /A:D "%ProgramFiles(x86)%\Microsoft\Edge\Application" 2^>nul ^| find "."') do set "edge_chromium_package_version=%%i"
if defined edge_chromium_package_version (
  taskkill /f /im msedge.exe >nul 2>nul
  taskkill /f /im MicrosoftEdgeUpdate.exe >nul 2>nul
  %~dp0edgesetup.exe --uninstall --force-uninstall --msedge --system-level --verbose-logging
)
)
del /f /q "%USERPROFILE%\Desktop\Microsoft Edge.lnk" >nul 2>nul
del /f /q "%ProgramData%\Microsoft\Windows\Start Menu\Programs\Microsoft Edge.lnk" >nul 2>nul
del /f /q "%appdata%\Microsoft\Windows\Start Menu\Programs\Microsoft Edge.lnk" >nul 2>nul
goto :eof


评分

参与人数 1无忧币 +5 收起 理由
某些人 + 5 赞一个!

查看全部评分

49#
发表于 4 天前 | 只看该作者
学习学习
回复

使用道具 举报

48#
发表于 4 天前 来自手机 | 只看该作者
学习了
回复

使用道具 举报

47#
发表于 4 天前 来自手机 | 只看该作者
学习了
回复

使用道具 举报

46#
 楼主| 发表于 4 天前 | 只看该作者
CYBERLONER 发表于 2026-1-22 09:56
分享一个删除非必需的APPX(包括Defender)的简单办法
这个办法非常好用,感谢分享

半年前发的内容还能被挖出来,更新一下最新的方案

在镜像中离线添加一个批处理 \Windows\Setup\Scripts\SetupComplete.cmd 内容如下
reg export "HKLM\Software\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\InboxApplications" "%~dp0InboxApplications.reg" /y
for /f "tokens=9 delims=\" %%a in ('reg query "HKLM\Software\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\InboxApplications" /f "*" /k ^| findstr /i /v "搜索结束 ShellExperienceHost StartMenuExperienceHost Client.CBS immersivecontrolpanel PrintDialog Search"') do (
    reg delete "HKLM\Software\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\InboxApplications\%%a" /f >nul 2>nul
)
reg export "HKLM\Software\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\Applications" "%~dp0Applications.reg" /y
for /f "tokens=9 delims=\" %%a in ('reg query "HKLM\Software\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\Applications" /f "*" /k ^| findstr /i /v "搜索结束 VCLibs"') do (
    reg delete "HKLM\Software\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\Applications\%%a" /f >nul 2>nul
)
回复

使用道具 举报

45#
发表于 4 天前 | 只看该作者
分享一个删除非必需的APPX(包括Defender)的简单办法
这个办法非常好用,感谢分享

点评

半年前发的内容还能被挖出来,更新一下最新的方案 在镜像中离线添加一个批处理 \Windows\Setup\Scripts\SetupComplete.cmd 内容如下 reg export "HKLM\Software\Microsoft\Windows\CurrentVersion\Appx\AppxAllU  详情 回复 发表于 4 天前
回复

使用道具 举报

44#
发表于 4 天前 | 只看该作者
非常不错,谢谢分享。。。
回复

使用道具 举报

43#
发表于 2025-7-7 10:19:02 | 只看该作者
感谢楼主分享!
回复

使用道具 举报

42#
发表于 2025-7-4 13:06:40 | 只看该作者
感谢分享!
回复

使用道具 举报

41#
发表于 2025-7-4 12:45:09 | 只看该作者
感谢分享
回复

使用道具 举报

40#
发表于 2025-7-4 12:44:21 | 只看该作者
~dp0后加个.\可读性好一点,%~dp0.\edgesetup.exe
回复

使用道具 举报

39#
发表于 2025-7-3 19:39:43 | 只看该作者
赞一个!
回复

使用道具 举报

38#
发表于 2025-7-3 14:34:51 来自手机 | 只看该作者
感谢分享
回复

使用道具 举报

37#
发表于 2025-7-2 20:27:26 | 只看该作者
hlowld 发表于 2025-7-1 21:12
这个办法其实并没有移除任何组件,原理是:
1、每个新用户首次登录时,AppReadiness服务会自动为用户安 ...

好的,谢谢,你这么一说我懂了,这种方法很安全
回复

使用道具 举报

36#
发表于 2025-7-2 17:08:17 | 只看该作者
谢谢谢分享。
回复

使用道具 举报

35#
发表于 2025-7-2 15:45:34 | 只看该作者
谢谢分享
回复

使用道具 举报

34#
发表于 2025-7-2 13:54:15 | 只看该作者
感谢分享
回复

使用道具 举报

33#
发表于 2025-7-2 12:51:20 | 只看该作者
好是好
就怕把系统搞倒了又要重来
回复

使用道具 举报

32#
发表于 2025-7-2 12:51:19 | 只看该作者
本帖最后由 2010hook 于 2025-7-2 13:07 编辑

改进了一下,更严谨简洁:
  1. powershell -ExecutionPolicy Bypass -NoProfile -Command "Get-ProvisionedAppxPackage -Path 'z:' | Where-Object { $_.PackageName -notmatch '(?:ShellExperienceHost|StartMenuExperienceHost|Client\.CBS|ImmersiveControlPanel|PrintDialog|VCLibs)' } | ForEach-Object { Remove-ProvisionedAppxPackage -Path 'z:' -PackageName $_.PackageName -ErrorAction Continue }"
复制代码
  1. for /f "tokens=9* delims=" %%a in ('reg query "HKLM\SOFTWARE_Tmp\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\InboxApplications" ^| findstr /ive "ShellExperienceHost StartMenuExperienceHost Client.CBS immersivecontrolpanel PrintDialog VCLibs" 2>nul') do (
  2.     reg delete "HKLM\SOFTWARE_Tmp\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\InboxApplications\%%~a" /f >nul 2>nul
  3. )
复制代码
回复

使用道具 举报

31#
发表于 2025-7-2 12:41:26 | 只看该作者
谢谢分享
回复

使用道具 举报

30#
发表于 2025-7-2 11:06:01 | 只看该作者
Mark,看反馈情况再说。。。
回复

使用道具 举报

29#
发表于 2025-7-2 10:52:47 | 只看该作者
感谢分享
回复

使用道具 举报

28#
发表于 2025-7-2 09:43:02 | 只看该作者
谢谢分享
回复

使用道具 举报

27#
发表于 2025-7-2 09:23:02 | 只看该作者
谢谢分享
回复

使用道具 举报

26#
发表于 2025-7-2 09:11:10 | 只看该作者
谢谢楼主分享
回复

使用道具 举报

25#
发表于 2025-7-2 09:10:05 | 只看该作者
谢谢楼主分享
回复

使用道具 举报

24#
发表于 2025-7-2 09:05:29 | 只看该作者
感谢您的分享!下载收藏啦!
回复

使用道具 举报

23#
发表于 2025-7-2 08:59:54 | 只看该作者

谢谢楼主分享
回复

使用道具 举报

22#
发表于 2025-7-2 08:46:50 | 只看该作者
感谢分享,学习了
回复

使用道具 举报

21#
发表于 2025-7-2 08:18:16 | 只看该作者
谢谢分享
回复

使用道具 举报

20#
发表于 2025-7-2 08:03:04 | 只看该作者
谢谢分享!!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2026-1-26 14:23

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表