应先解除Windows附件管理器对.tmp文件的锁定再删除:通过属性中勾选“解除锁定”或PowerShell执行Unblock-File命令释放文件句柄,再删除;还可修改注册表SaveZoneInformation值为1禁用自动锁定。

定位并删除被中断传输残留的tmp文件
局域网文件传输中途断开时,Windows会把未完成的数据暂存在临时目录中,生成.tmp后缀的锁定文件,这些文件无法直接删除,双击打不开,还持续占用磁盘空间。第一步不是急着删,而是先确认它们真实存在且未被其他进程占用。
按 Win + R 输入 %TEMP% 回车,进入当前用户的临时文件夹;再按 Ctrl + F 搜索 *.tmp,重点查看最近1小时内修改的文件——这类文件大概率是传输中断残留。
选中目标.tmp文件,右键→属性→“常规”选项卡底部勾选“只读”,点确定;再立即取消勾选“只读”,点确定。这一步强制刷新文件句柄状态,能释放部分被系统缓存锁定的引用。
解除附件管理器对tmp文件的锁定
从局域网复制来的文件(包括中断后残留的.tmp)默认带有“来自网络”的安全标记,触发Windows附件管理器的锁定机制,表现为灰色锁图标、右键无“删除”选项、提示“此文件已被阻止”。这是最常被忽略的根源。
在文件上右键→【属性】→拉到最下方,找到“安全”区域里的【解除锁定】复选框,勾选它→点击【确定】。
若该选项不可见,说明文件已不在原始下载路径下,需手动重置Zone.Identifier流:以管理员身份运行PowerShell,执行 Get-Item “路径文件名.tmp” | Unblock-File(注意替换实际路径)。
批量清理整个临时目录的锁定状态
单个处理效率低,且中断传输可能在多个位置留下.tmp文件:除了%TEMP%,还有C:WindowsTemp、\?UNC路径挂载点下的临时缓存。必须用PowerShell一次性扫清。
第一步:打开PowerShell(管理员),执行 cd $env:TEMP → 切入用户临时目录;
第二步:运行 Get-ChildItem -Filter *.tmp -Force | Unblock-File;
第三步:切换到系统临时目录:cd C:WindowsTemp → 再次执行相同命令;
第四步:若使用映射网络驱动器传输,还需处理UNC路径缓存,运行 Get-ChildItem -Path “\servershare” -Recurse -Filter *.tmp -ErrorAction SilentlyContinue | Unblock-File(需将server/share替换为实际地址)。
执行完这四步,所有被附件管理器锁定的.tmp文件全部解除保护,可正常删除或覆盖。
防止下次传输中断再生成锁定tmp文件
根本解法是让Windows不再给局域网来源的文件自动加锁。这需要修改注册表,关闭附件管理器的默认拦截行为。
按 Win + R 输入 regedit → 定位到 HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionPoliciesAttachments;
若该路径不存在,右键“Attachments”项→新建→DWORD(32位)值,命名为 SaveZoneInformation;
双击该值,将数值数据改为 1,基数选十六进制;
【重启资源管理器或注销当前账户后重新登录,设置立即生效】。

















