很多无良的网盘、工具为了获取用户的点击量,会在“此电脑”显示盘符的界面添加自己的快捷入口,长此以往电脑看盘符的界面就会变成垃圾站。
点名迅雷、百度网盘、移动网盘、115网盘、Autodesk360网盘
此工具功能:
- 删除现有的第三方图标
- 禁止第三方程序再添加图标
- 提供恢复功能
使用步骤:
新建文件并写入内容
run.bat
@echo off
:: 获取脚本目录
set SCRIPT_DIR=%~dp0
:: 检查是否以管理员身份运行
net session >nul 2>&1
if %errorLevel% neq 0 (
echo 正在以管理员身份重新启动...
powershell -Command "Start-Process '%~f0' -Verb RunAs"
exit /b
)
:: 调用 PowerShell 脚本,保持选择菜单
powershell -NoProfile -ExecutionPolicy Bypass -File "%SCRIPT_DIR%remove_icons.ps1"
pause
remove_icons.ps1
# remove_icons.ps1
# 功能:
# 1 - 删除非 DelegateFolders 项并设置只读权限
# 2 - 恢复管理员读写权限
$NameSpacePath = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace"
# 提示用户选择
Write-Host "请选择操作:"
Write-Host "1 - 删除非 DelegateFolders 项并设置只读权限"
Write-Host "2 - 恢复管理员读写权限"
$choice = Read-Host "请输入 1 或 2"
switch ($choice) {
"1" {
# 删除 NameSpace 下除了 DelegateFolders 外的子项
Get-ChildItem -Path $NameSpacePath | ForEach-Object {
if ($_.PSChildName -ne "DelegateFolders") {
try {
Remove-Item -Path $_.PSPath -Recurse -Force
Write-Host "Deleted: $($_.PSChildName)"
} catch {
Write-Warning "Failed to delete: $($_.PSChildName) - $_"
}
}
}
# 设置 NameSpace 只读权限
try {
$acl = Get-Acl -Path $NameSpacePath
$acl.SetAccessRuleProtection($true, $false) # 移除继承
# 清除现有权限
$acl.Access | ForEach-Object { $acl.RemoveAccessRule($_) }
# 添加只读规则
$rule = New-Object System.Security.AccessControl.RegistryAccessRule(
"Everyone", "ReadKey", "ContainerInherit,ObjectInherit", "None", "Allow"
)
$acl.AddAccessRule($rule)
Set-Acl -Path $NameSpacePath -AclObject $acl
Write-Host "已设置 NameSpace 为只读(所有用户)"
} catch {
Write-Warning "设置权限失败:$_"
}
Write-Host "操作完成。请重启资源管理器或系统以生效。"
}
"2" {
# 恢复管理员完全控制权限
try {
$acl = Get-Acl -Path $NameSpacePath
$acl.SetAccessRuleProtection($true, $false) # 移除继承
# 清除现有权限
$acl.Access | ForEach-Object { $acl.RemoveAccessRule($_) }
# 添加管理员完全控制权限
$rule = New-Object System.Security.AccessControl.RegistryAccessRule(
"Administrators", "FullControl", "ContainerInherit,ObjectInherit", "None", "Allow"
)
$acl.AddAccessRule($rule)
Set-Acl -Path $NameSpacePath -AclObject $acl
Write-Host "已恢复管理员对 NameSpace 的读写权限"
} catch {
Write-Warning "恢复权限失败:$_"
}
}
default {
Write-Host "输入无效,请重新运行脚本并选择 1 或 2"
}
}
注意,remove_icons.ps1,要保存为UTF-8 无 BOM,在notepad++菜单选Encoding->UTF8-BOM再保存。
然后把两个文件放进同一个目录里,双击运行run.bat即可。
按照提示选择,选择1就能删除所有第三方图标并且设置权限,以后基本可以杜绝第三方添加图标;选择2能恢复权限,以备临时需要添加图标。
使用前记得备份注册表。
#反流氓软件