24H2 删除 DISM 中始终显示的两个(不可)回收项
本帖最后由 qqsxbg 于 2025-4-20 12:47 编辑适用到26100.版本号大于1742
--------------------------------------------------
使用dism /online /cleanup-image /AnalyzeComponentStore命令 可查看 可回收的两个包
组件存储的实际大小 : 8.17 GB
已与 Windows 共享 : 7.22 GB
备份和已禁用的功能 : 952.65 MB
缓存和临时数据 :0 bytes
上次清理的日期 : 2025-04-20 10:48:38
可回收的程序包数 : 2
推荐使用组件存储清理 : 是
--------------------------------------------------
此两个可回收程序包为
- [ Microsoft-Windows-FodMetadataServicing-Desktop-Metadata-Package~31bf3856ad364e35~amd64~~10.0.26100.1742]
- [ Package_for_RollupFix~31bf3856ad364e35~amd64~~26100.1742.1.10]
两个软件包“已被深度取代”
批处理代码如下
@ECHO Off
PUSHD %~DP0
NET SESSION >NUL 2>&1
IF %ERRORLEVEL% NEQ 0 (
ECHO.
ECHO SET UAC = CreateObject^("Shell.Application"^) > "%TEMP%\Getadmin.vbs"
ECHO UAC.ShellExecute "%~f0", "%1", "", "runas", 1 >> "%TEMP%\Getadmin.vbs"
"%TEMP%\Getadmin.vbs"
DEL /f /q "%TEMP%\Getadmin.vbs" 2>NUL
EXIT /B
)
:: 设置工作路径
set "MyPath=%CD%\Log"
if not exist "%MyPath%" mkdir "%MyPath%"
:: 初始化变量
set "PackageName=Package_for_RollupFix~31bf3856ad364e35~amd64~~26100.1742.1.10"
set "FoundIt=0"
set "Cont=0"
set "Zero=0"
:: 获取已安装包列表
echo 正在检查已安装的更新包...
dism /online /get-packages /format:table > "%MyPath%\WinPack.txt"
:: 检查指定包是否存在
findstr /i /c:"%PackageName%" "%MyPath%\WinPack.txt" >nul
if %errorlevel% equ 0 (
set FoundIt=1
echo 发现目标更新包: %PackageName%
) else (
echo 未找到目标更新包: %PackageName%
goto :exit
)
:: 用户确认
:confirm
set /p answ="找到更新包,是否继续?: "
if /i "%answ%"=="y" (
set Cont=1
) else if /i "%answ%"=="n" (
goto :exit
) else (
goto :confirm
)
:: 执行清理操作
echo 正在清理并重置SxS存储
dism /online /cleanup-image /startcomponentcleanup /resetbase > "%MyPath%\CleaningTheStore_BeforeDel.txt"
echo 正在清理过时的服务包...
dism /online /Cleanup-Image /SPSuperseded > "%MyPath%\SPSuperseded_BeforeDel.txt
echo 正在分析组件存储大小...
dism /online /cleanup-image /analyzecomponentstore > "%MyPath%\AnalyzeTheStore_BeforeDel.txt"
:: 获取可回收包数量
for /f "tokens=6" %%a in ('findstr /c:"Number of Reclaimable Packages" "%MyPath%\AnalyzeTheStore_BeforeDel.txt"') do (
set Nr=%%a
echo 找到的可回收包数量: !Nr!
)
if !Nr! gtr 2 (
echo 发现意外的包数量: !Nr!
goto :exit
)
:: 删除确认
:delete_confirm
set /p answ="确定要删除此更新包吗?: "
if /i "%answ%"=="y" (
echo 正在删除更新包...
dism /online /remove-package /packagename:%PackageName% > "%MyPath%\DeletingPackage.txt
echo 正在清理并重置SxS存储
dism /online /cleanup-image /startcomponentcleanup /resetbase > "%MyPath%\CleaningTheStore_AfterDel.txt
echo 正在清理过时的服务包...
dism /online /Cleanup-Image /SPSuperseded > "%MyPath%\SPSuperseded_AfterDel.txt
echo 正在分析组件存储大小...
dism /online /cleanup-image /analyzecomponentstore > "%MyPath%\AnalyzeTheStore_AfterDel.txt
for /f "tokens=6" %%a in ('findstr /c:"Number of Reclaimable Packages" "%MyPath%\AnalyzeTheStore_AfterDel.txt"') do (
set FinalNr=%%a
)
if !FinalNr! equ 0 (
echo SxS 存储清理成功!
) else (
echo 清理未完成,剩余包数量: !FinalNr!
)
) else if /i "%answ%"=="n" (
goto :exit
) else (
goto :delete_confirm
)
:: 显示最终结果
echo ------------------------------
echo DISM 组件存储分析:
dism /online /cleanup-image /analyzecomponentstore
echo ------------------------------
:exit
echo 正在退出脚本...
pause
收藏了 ,测试可用! 本帖最后由 dlshangren 于 2025-4-20 12:40 编辑
我刚才用用dism /online /cleanup-image /AnalyzeComponentStore命令检查了一下,好像我这里4月18日已经删除了那两个什么文件。另外,我用你的批处理代码试了一下,运行完闪了一下就没了,系统空间也没变。
dlshangren 发表于 2025-4-20 12:37
我刚才用用dism /online /cleanup-image /AnalyzeComponentStore命令检查了一下,好像我这里4月18日已经删 ...
文件编码 要改成这样。(因为涉及到中文注释这些)
另外看你的图片。 你的有2个可删除的。。。。。
收藏了 , 部署映像服务和管理工具
版本: 10.0.26100.1150
映像版本: 10.0.26100.3775
[==========================100.0%==========================]
组件存储(WinSxS)信息:
Windows 资源管理器报告的组件存储大小 : 17.46 GB
组件存储的实际大小 : 16.20 GB
已与 Windows 共享 : 7.73 GB
备份和已禁用的功能 : 8.47 GB
缓存和临时数据 :0 bytes
上次清理的日期 : 2025-04-18 23:00:01
可回收的程序包数 : 8
推荐使用组件存储清理 : 是 正在检查已安装的更新包...
发现目标更新包: Package_for_RollupFix~31bf3856ad364e35~amd64~~26100.1742.1.10
找到更新包,是否继续?: y
正在清理并重置SxS存储
qqsxbg 发表于 2025-4-20 12:44
文件编码 要改成这样。(因为涉及到中文注释这些)
用您做好的批处理文件清理了,不过系统盘空间大小还是没变。谢谢您辛苦劳动和指点! 所以这两个包是啥啊 已被深度取代又是什么意思 清理了1.3G。谢谢 回复的不多啊,会不会有什么后遗症? ddfzl 发表于 2025-4-20 15:39
回复的不多啊,会不会有什么后遗症?
目前没发现。 qqsxbg 发表于 2025-4-20 15:42
目前没发现。
就怕以后更新有问题,我这里清理后减少1.4G空间{:5_264:} 感谢分享! 谢谢分享哈 谢谢楼主分享 谢谢分享 谢谢分享,离线镜像能用不哈 可回收的程序包数 : 22
推荐使用组件存储清理 : 是
有没副作用
页:
[1]