desktop.ini被反复生成且含可疑内容,表明遭流氓软件劫持;需关闭篡改防护、用icacls拒绝写入权限、批量删除并重置属性、注册表禁用非必要自动生成。

当你在桌面或文件夹里反复看到 desktop.ini 文件,删掉后又自动出现,甚至发现它被病毒改写、关联异常、开机弹出记事本——这已不是普通隐藏问题,而是系统保护机制被绕过或破坏的明确信号,必须从根源阻断流氓软件对 desktop.ini 的写入与滥用。
确认 desktop.ini 是否已被恶意篡改
右键点击任意一个 visible 的 desktop.ini → 选择「属性」→ 切换到「常规」选项卡 → 查看「只读」和「隐藏」是否被勾选;若「只读」未勾选、或「存档」被意外启用、或「安全」选项卡中出现陌生用户/组(如 Everyone 全权限、或非 SYSTEM/Administrator 的可写权限),【说明该文件极可能已被第三方程序劫持写入】。
用记事本打开它:若内容含可疑 URL、base64 编码段、exe 路径、或非标准节名(如 [ExtShellFolder]、[.ShellClassInfo] 外还出现 [AutoRun]、[Script] 等),直接判定为篡改。
彻底阻止流氓软件写入 desktop.ini
第一步:关闭 Windows Defender 实时保护的篡改防护(否则后续所有权限锁定将被自动还原)→ 打开「Windows 安全中心」→「病毒和威胁防护」→「病毒和威胁防护设置」→ 滑到底部关闭「篡改防护」。
第二步:以管理员身份运行 PowerShell → 输入以下命令并回车(逐行执行):
icacls "$env:USERPROFILE\Desktop" /deny "Everyone:(OI)(CI)(WD)"
icacls "$env:USERPROFILE\Desktop" /deny "Users:(OI)(CI)(WD)"
icacls "$env:USERPROFILE\Desktop" /deny "Authenticated Users:(OI)(CI)(WD)"
第三步:对所有常见目标盘根目录重复执行(如 E:\、D:\)→ 将上述命令中的路径替换为对应盘符,例如:
icacls "E:\" /deny "Everyone:(OI)(CI)(WD)"
注意:(OI) 表示对象继承,(CI) 表示容器继承,(WD) 表示写入数据权限;此操作会拒绝所有非管理员账户向这些位置写入新文件或修改现有文件,desktop.ini 将无法被创建或覆盖。管理员仍可手动操作,不影响你日常使用。
批量清除已存在的危险 desktop.ini 并重置属性
方法一:强制清除全部用户目录下的 desktop.ini(含子目录)
以管理员身份运行 PowerShell → 输入:
del /f /s /q /a:h-s "%UserProfile%\Desktop\desktop.ini"
del /f /s /q /a:h-s "%UserProfile%\OneDrive\desktop.ini"
del /f /s /q /a:h-s "%UserProfile%\Documents\desktop.ini"
方法二:针对启动项路径精准清理(防开机弹窗)
Win+R → 输入 shell:startup → 回车 → 删除其中的 desktop.ini
Win+R → 输入 shell:common startup → 回车 → 删除其中的 desktop.ini
方法三:重置系统级 desktop.ini 属性(恢复原始隐藏+系统属性)
PowerShell(管理员)中执行:
attrib +h +s "%SystemRoot%\System32\shell32.dll" 2>$null
attrib +h +s "$env:USERPROFILE\Desktop\desktop.ini" 2>$null
如果提示“找不到文件”,说明该位置原本没有合法 desktop.ini,无需处理。
永久禁用非必要位置自动生成 desktop.ini
第一步:打开注册表编辑器(regedit)→ 定位到:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer
第二步:在右侧空白处右键 → 新建 → DWORD (32 位) 值 → 命名为 NoDesktopIniCache
第三步:双击新建项 → 将数值数据设为 1 → 点击确定
第四步:重启资源管理器(任务管理器 → 找到「Windows 资源管理器」→ 右键「重新启动」)或直接重启电脑
该策略将禁止 Windows 在用户文件夹(除系统默认模板外)自动生成 desktop.ini,仅保留 C:\Windows\System32\ShellNew 等核心路径的必要行为,从源头减少暴露面。











