[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 hentai87 于 2020-6-6 16:07 编辑

回复 6# flashercs


我关了echo off,看了详细过程,是对的,提示不准确
问题出在前面修改注册表的步骤,没修改对

我适当改了下,失败了,似乎不识别%%~nA
结果是HKLM\SOFT\Microsoft\Windows\CurrentVersion\Component Based Servicing\Packages\%~nA

::-------------卸载系统包
for /f "delims=" %%i in (Remove.txt) do (
        for %%A in ("%MT%\Windows\servicing\Packages\%%i~*.mum") do (
        reg load HKLM\SOFT "%MT%\Windows\System32\config\software"
        call :SETVALUE %%~nA
        reg unload HKLM\SOFT
        %dism% /NoRestart /image:%MT% /Remove-package /Packagename:"%%~nA"
  )
)

pause
exit

::-------------修改注册表
:SETVALUE
echo.
echo 修改Visibility
reg add "HKLM\SOFT\Microsoft\Windows\CurrentVersion\Component Based Servicing\Packages\%%~nA" /v Visibility /t REG_DWORD /d 1 /f
echo.
echo 删除Owners
reg delete "HKLM\SOFT\Microsoft\Windows\CurrentVersion\Component Based Servicing\Packages\%%~nA\Owners" /f
goto:eof

TOP

回复 5# hentai87
  1. for %%A in ("%MT%\Windows\servicing\Packages\%%i~*.mum") do echo "%%~nA"
复制代码
改成这样会输出什么结果?看看
微信:flashercs
QQ:49908356

TOP

回复 4# flashercs


    这样就没后面的~31bf3856ad364e35~amd64~~10.0.18362.418
结果是 Containers-ApplicationGuard-Shared-windows-Package

TOP

本帖最后由 flashercs 于 2020-6-6 14:55 编辑

回复 3# hentai87


    修改了代码,改成%%~nA
解释一下
  1. for %%A in ("%MT%\Windows\servicing\Packages\%%i~*.mum") do %dism% /NoRestart /image:%MT% /Remove-package /Packagename:"%%~nA"
复制代码
for %%A in (带有通配符*?的字符串) 是可以起到检测文件是否存在的效果的.
微信:flashercs
QQ:49908356

TOP

回复 2# flashercs


    Packagename:不能有.mum

TOP

本帖最后由 flashercs 于 2020-6-6 14:49 编辑
  1. for /f "delims=" %%i in (Remove.txt) do (
  2.        for %%A in ("%MT%\Windows\servicing\Packages\%%i~*.mum") do %dism% /NoRestart /image:%MT% /Remove-package /Packagename:"%%~nA"
  3. )
复制代码
给个评分 技术+1
2

评分人数

    • hentai87: 乐于助人技术 + 1
    • netdzb: 最好解释一下代码,谢谢!技术 + 1
微信:flashercs
QQ:49908356

TOP

返回列表