我做了个bat脚本,删除后如果担心异常可以恢复,
reg export命令备份的.reg 文件,双击恢复只会还原里面指定的项,绝对不会覆盖整个注册表,不会导致系统崩溃

baidu-netdisk-reg-cleaner: 清理百度网盘残留的注册表项(右键菜单、我的电脑图标),自动备份注册表,支持管理员提权,避免误删
https://gitee.com/anyphasy/baidu-netdisk-reg-cleaner
可以点上面直接下载,下载后直接双击即可
也可以自己拷贝下面的自己创建文件自己删
bash
@echo off
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
if %errorlevel% neq 0 (
chcp 65001 >nul 2>&1
echo [ 提示 ] 正在请求管理员权限,提权后请稍等... /
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
cscript //nologo "%temp%\getadmin.vbs" >nul 2>&1
del "%temp%\getadmin.vbs" >nul 2>&1
exit /B
)
chcp 65001 >nul 2>&1
cls
set "BACKUP_FILE=%USERPROFILE%\Desktop\百度网盘注册表备份.reg"
set "TEMP_BACKUP=%temp%\bdpan_reg_temp.reg"
echo ================ 百度网盘注册表清理 ================
echo 本脚本只删除注册表,不重启、不刷新、不关闭任何程序 /
echo 所有操作会先备份注册表到桌面
echo.
:: ===================== 右键菜单 =====================
echo 正在检查右键菜单项... /
set "reg1=HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers\YunShellExt"
set "reg2=HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\YunShellExt"
reg query "%reg1%" >nul 2>&1
if %errorlevel% equ 0 (
echo [ 提示 ] 找到右键项:%reg1% _
reg export "%reg1%" "%TEMP_BACKUP%" /y >nul 2>&1
if not exist "%BACKUP_FILE%" (
copy "%TEMP_BACKUP%" "%BACKUP_FILE%" >nul 2>&1
) else (
findstr /v /c:"Windows Registry Editor Version 5.00" "%TEMP_BACKUP%" >> "%BACKUP_FILE%"
)
reg delete "%reg1%" /f >nul 2>&1
echo [ 完成 ] 已备份并删除该右键项 ;
) else (
echo [ 提示 ] 右键项不存在:%reg1% ;
)
reg query "%reg2%" >nul 2>&1
if %errorlevel% equ 0 (
echo [ 提示 ] 找到右键项:%reg2% _
reg export "%reg2%" "%TEMP_BACKUP%" /y >nul 2>&1
if exist "%BACKUP_FILE%" (
findstr /v /c:"Windows Registry Editor Version 5.00" "%TEMP_BACKUP%" >> "%BACKUP_FILE%"
) else (
copy "%TEMP_BACKUP%" "%BACKUP_FILE%" >nul 2>&1
)
reg delete "%reg2%" /f >nul 2>&1
echo [ 完成 ] 已备份并删除该右键项 ;
) else (
echo [ 提示 ] 右键项不存在:%reg2% ;
)
echo.
:: ================== 我的电脑图标(终极修复:跳过不可信的二次查询) ==================
echo 正在检查我的电脑图标项... /
set "icon1=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{679F137C-3162-45da-BE3C-2F9C3D093F64}"
set "icon2=HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{679F137C-3162-45da-BE3C-2F9C3D093F64}"
:: 核心修改:仅判断删除命令是否执行(管理员已提权,执行成功即视为删除成功)
reg query "%icon1%" >nul 2>&1
if %errorlevel% equ 0 (
echo [ 提示 ] 找到我的电脑图标项:%icon1% _
reg export "%icon1%" "%TEMP_BACKUP%" /y >nul 2>&1
if exist "%BACKUP_FILE%" (
findstr /v /c:"Windows Registry Editor Version 5.00" "%TEMP_BACKUP%" >> "%BACKUP_FILE%"
) else (
copy "%TEMP_BACKUP%" "%BACKUP_FILE%" >nul 2>&1
)
:: 执行删除,因已提权,只要命令执行无报错(errorlevel=0)就视为成功
reg delete "%icon1%" /f >nul 2>&1
if %errorlevel% equ 0 (
echo [ 完成 ] 已备份并删除该图标项 ;
) else (
echo [ 错误 ] 删除失败:项被系统保护或权限不足 ;
)
) else (
echo [ 提示 ] 我的电脑图标项不存在:%icon1% ;
)
reg query "%icon2%" >nul 2>&1
if %errorlevel% equ 0 (
echo [ 提示 ] 找到我的电脑图标项:%icon2% _
reg export "%icon2%" "%TEMP_BACKUP%" /y >nul 2>&1
if exist "%BACKUP_FILE%" (
findstr /v /c:"Windows Registry Editor Version 5.00" "%TEMP_BACKUP%" >> "%BACKUP_FILE%"
) else (
copy "%TEMP_BACKUP%" "%BACKUP_FILE%" >nul 2>&1
)
reg delete "%icon2%" /f >nul 2>&1
echo [ 完成 ] 已备份并删除该图标项 ;
) else (
echo [ 提示 ] 我的电脑图标项不存在:%icon2% ;
)
del "%TEMP_BACKUP%" >nul 2>&1
echo.
echo ================ 清理完成 ================
echo 注册表操作已完成,稍后手动刷新文件夹即可生效 /
echo 备份文件:%BACKUP_FILE%(双击可恢复所有备份的注册表项)!
echo 不会重启任何程序,数据安全 ;
echo.
pause >nul

参考来源

