彻底卸载奇安信天擎:从原理到实战的完整指南
1. 项目概述为什么“卸载”本身就是一个技术活最近在技术社区和同事圈里经常看到有人为卸载某个特定的企业安全软件而头疼。这个软件就是“奇安信天擎”。你可能也遇到过类似情况公司统一部署后个人电脑变得异常卡顿想装个开发环境或者跑个虚拟机都处处受限更别提那些被误报拦截的正常工具了。当你决定卸载它时却发现事情没那么简单——控制面板里的卸载程序要么灰色不可用要么卸载到一半要求输入密码甚至卸载后还有“幽灵”进程在后台徘徊导致新软件无法安装。这不仅仅是一个“点击卸载”的动作。它背后涉及企业终端安全管理策略、软件自保护机制、驱动层拦截技术以及残留清理等一系列问题。对于IT管理员、有权限处理自己设备的技术人员或者只是受困于此的普通用户来说掌握一套安全、彻底、不留后患的卸载方法是一项非常实用的技能。今天我就结合多次实战经验从原理到实操为你完整拆解如何应对这个挑战。我们将不依赖任何非官方或高风险工具完全在系统允许的框架内通过层层递进的方法解决问题。2. 核心思路拆解理解天擎的“防护铠甲”在动手之前我们必须先理解对手。奇安信天擎作为一款企业级终端安全与管理平台其设计初衷就是为了防止被恶意软件终止或非法卸载。因此它采用了一套组合拳来实现自我保护我们的卸载操作本质上是在与这套保护机制进行“合规博弈”。2.1 天擎的核心自保护机制分析天擎的防护是立体和多层次的主要可以分为以下几个层面进程与服务保护这是最直观的一层。天擎会有多个常驻进程和服务例如核心的监控进程、升级服务、通信服务等。这些进程和服务通常被设置为“相互守护”。如果你尝试在任务管理器中结束其中一个其他进程会立刻将其重新启动。更关键的是这些进程往往以较高的系统权限如SYSTEM或受保护的进程运行普通用户权限根本无法结束。文件与注册表保护天擎会锁定其安装目录下的关键文件如.exe, .dll, .sys驱动文件防止被删除或修改。同时它在注册表中写入的大量配置项和启动项也可能受到保护。直接删除会提示“文件正在使用”或“权限不足”。驱动层拦截这是其防护的深层核心。天擎会加载内核模式驱动程序.sys文件这些驱动运行在操作系统最底层Ring 0。它们可以拦截系统调用例如拦截用于结束进程的TerminateProcessAPI调用或者拦截用于删除文件的文件操作请求。当你的卸载程序或手动删除动作触发这些系统调用时驱动会先一步判断发起者是否“合法”非法请求则被直接阻断。这就是为什么普通卸载经常失败的根本原因。策略锁与密码保护企业管理员可以通过控制台下发策略直接锁定客户端的卸载功能。客户端卸载时需要验证卸载密码而这个密码只有管理员知道。这是一种管理策略上的“软锁”。我们的卸载思路就是针对这几层防护制定一个由表及里、由软到硬的“剥离”策略。核心原则是优先尝试官方、正规的卸载流程若不成功则设法解除其自保护再执行卸载最后必须清理残留避免冲突。2.2 卸载路径规划四种情景与应对策略根据你手头拥有的“武器”和权限我们可以规划出几条清晰的路径情景A理想情况拥有官方卸载密码且软件功能正常。这是最轻松的路径直接运行官方卸载程序并输入密码即可。情景B常见困境无卸载密码但系统可正常启动并登录。我们需要设法绕过或解除其进程/驱动保护然后尝试强制卸载或清理。情景C顽固情况无密码且软件异常导致安全模式都无法正常进入。这需要借助外部环境如Windows PE启动盘从离线环境直接操作文件系统。情景D管理视角批量卸载或自动化部署。这通常需要管理员在控制台执行卸载命令或使用静默卸载参数。本文将重点聚焦于情景B这是个人用户和技术人员最常遇到、也最需要技巧的情况。我们会详细走通一条从用户模式到内核模式逐步解除限制的实战路线。3. 实操准备与前期侦查“兵马未动粮草先行”。在开始正式操作前做好信息搜集和准备工作能事半功倍也能避免误操作导致系统问题。3.1 关键信息搜集首先我们需要摸清当前系统中天擎的“兵力部署”。确定安装路径通常默认安装在C:\Program Files (x86)\Qianxin\天擎或C:\Program Files\Qianxin\终端安全管理系统。你可以在开始菜单找到其程序快捷方式右键“打开文件位置”来定位。记下这个路径我们后续会频繁用到。识别核心进程与服务打开任务管理器CtrlShiftEsc切换到“详细信息”选项卡。观察进程列表寻找与“Qianxin”、“天擎”、“Safedog”网神版可能显示此名相关的进程。常见的可能有Client.exe,SafeDog.exe,QAXAgt.exe,QAXAgtSvc.exe等。切换到“服务”选项卡或运行services.msc查找类似“Qianxin Agent Service”、“奇安信天擎服务”等名称的服务。记录下它们的“服务名称”一个较短的英文标识如QAXAgtSvc。检查卸载程序状态到控制面板的“程序和功能”中找到“奇安信天擎”或类似条目。观察“卸载”按钮是可用还是灰色。如果是灰色说明被组策略或密码锁定。注意在操作前务必与你的IT部门沟通。如果是公司资产擅自卸载可能违反安全规定。本文方法仅适用于拥有个人设备完全管理权限或已获得授权的情况。3.2 工具准备安全合规版我们不会使用来路不明的“强力删除”或“破解”工具那些工具本身可能携带恶意软件。我们将主要依赖系统自带工具和微软官方认可的实用程序。Process Explorer (来自微软Sysinternals套件)这是任务管理器的超级增强版。它可以显示进程的详细属性、加载的DLL、句柄、以及父子进程关系。更重要的是它可以“暂停”进程这对于打破进程间的相互守护至关重要。从微软官网下载是绝对安全的。PCHunter (慎用仅高级用户)这是一款功能强大的内核级系统信息查看工具可以查看进程、线程、模块、驱动、钩子等。它能在驱动层进行操作。但请注意此类工具会被几乎所有安全软件报毒包括Windows Defender因为它行为类似Rootkit。仅在完全信任其来源且了解风险的情况下在操作前临时关闭实时防护使用用完即删。这是我们的“核选项”优先使用前一种方法。Windows Installer CleanUp Utility 或 MSICUU2微软官方提供的旧版工具用于清理损坏的Windows Installer安装信息。对于通过MSI安装的天擎如果卸载信息损坏可以用它来清理注册表条目为重新安装或清理扫清障碍。不过Win10之后更推荐使用系统自带的msiexec命令。一个Windows PE启动U盘用于情景C的终极方案。推荐使用微软官方Media Creation Tool制作的安装U盘其内置的PE环境足够进行文件操作。4. 标准卸载流程尝试情景A/B无论是否有密码我们都应该先尝试最正规的途径。4.1 通过控制面板或安装目录卸载前往“控制面板 - 程序和功能”找到天擎尝试点击“卸载/更改”。如果弹出密码框而你没有密码那么此路暂时不通。如果你有密码输入后即可跟随向导完成。如果按钮灰色说明被组策略禁用。可以尝试运行天擎安装目录下的卸载程序通常名为Uninst.exe,uninstall.exe或setup.exe。右键以管理员身份运行它。4.2 利用Windows Installer命令行卸载很多企业软件是MSI安装包部署的。我们可以尝试用系统底层的安装器命令来卸载。首先我们需要找到产品的GUID全局唯一标识符。打开注册表编辑器regedit操作前建议导出备份相关分支。导航至HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall。在下面的子项中逐个查看找到“DisplayName”值为“奇安信天擎”的项。记下该项的文件夹名称那就是GUID形如{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}。也可能在HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall下64位系统的32位软件。以管理员身份打开命令提示符CMD或PowerShell。执行卸载命令msiexec /x {产品GUID} /qn/x表示卸载。{产品GUID}替换为你找到的实际GUID。/qn参数表示无界面静默卸载。如果这个命令能执行它会绕过一些图形界面的检查。如果提示需要密码或权限不足则说明此路也被驱动层保护拦截了。实操心得msiexec命令有时能绕过图形界面卸载程序的一些初步检查但通常无法绕过深层的驱动保护。不过它仍然是一个值得一试的、干净的方法。5. 进阶操作解除自保护机制情景B核心当标准方法全部失效我们就需要主动解除天擎的“武装”。我们的目标是先停止其服务与进程再解除或禁用其驱动。顺序不能错因为驱动在保护进程和服务。5.1 使用Process Explorer终止进程树这里的关键不是“结束进程”而是“暂停进程树”打破守护循环。从微软官网下载并运行Process Explorer务必“以管理员身份运行”。在进程列表中找到天擎的核心进程如Client.exe。不要直接右击结束。右击该进程选择“Suspend” (暂停)。这个操作会挂起该进程的所有线程使其停止运行但进程对象还在。守护进程检测到它“还在”可能不会立即重启它。迅速操作暂停主进程后立即在Process Explorer中寻找并暂停所有其他相关的天擎进程。目标是暂停整个进程家族。在所有相关进程都被暂停状态栏显示“Suspended”后再右击每一个选择“Kill Process Tree” (结束进程树)。这会将已暂停的进程及其所有子进程彻底结束。为什么先“Suspend”再“Kill”直接“Kill”会触发系统的进程终止信号可能被天擎的驱动或守护进程瞬间捕获并重启。而“Suspend”是让进程“睡着”对外界响应变慢守护机制可能无法及时反应为我们争取一个短暂的时间窗口来清理整个进程组。5.2 停止并禁用相关服务进程结束后需要防止服务再次将其启动。以管理员身份打开命令提示符CMD。使用sc命令来停止并禁用服务。你需要之前侦查到的服务名称例如QAXAgtSvc。sc stop QAXAgtSvc sc config QAXAgtSvc start disabledsc stop命令停止正在运行的服务。sc config ... start disabled将服务的启动类型设置为“禁用”这样下次重启电脑它也不会自动运行。对每一个识别出的天擎相关服务重复此操作。5.3 处理内核驱动高级步骤需谨慎这是最核心也最需谨慎的一步。驱动不停保护不除。方法一使用SC命令删除服务驱动以服务形式存在驱动在系统中也是注册为一个“服务”。我们可以尝试在进程和服务都停止后删除这个驱动服务。同样在管理员CMD中使用sc delete命令。sc delete 驱动服务名驱动服务名可能需要借助像PCHunter这样的工具来查看通常名字里带“filter”、“flt”、“sys”等字样或者直接与天擎产品名相关。如果命令成功驱动服务条目会被移除但.sys驱动文件可能还留在磁盘上。方法二在安全模式下操作Windows安全模式只加载最核心的微软驱动第三方驱动包括天擎的驱动通常不会加载。这是一个天然的“无驱动保护”环境。重启电脑在启动时按F8Win10/Win11可能需要通过“系统配置msconfig”-“引导”-“安全引导”来设置进入安全模式。在安全模式下重复第5.1和5.2步停止进程和禁用服务。此时因为驱动未加载操作会非常顺利。在安全模式下你可以尝试直接运行官方卸载程序或者手动删除安装目录。重要警告手动删除系统驱动文件.sys和注册表项是高风险操作。错误删除可能导致系统蓝屏BSOD。除非你百分百确定文件与天擎相关否则不建议在正常模式下手动删除驱动文件。安全模式下删除相对安全因为驱动未激活。6. 清理战场文件与注册表残留清除在成功停止所有组件后我们需要进行深度清理确保没有残留影响系统稳定或未来安装其他安全软件。6.1 手动删除安装目录和文件导航到天擎的安装目录如C:\Program Files (x86)\Qianxin。尝试直接删除整个“天擎”或“Qianxin”文件夹。如果提示文件正在使用或权限不足使用Process Explorer的“Find - Find Handle or DLL”功能搜索该目录下的关键文件名看是否被其他未知进程锁定。如有结束之。或者重启电脑进入安全模式再进行删除操作这是最彻底的方法。6.2 清理注册表残留再次强调修改注册表前务必备份打开注册表编辑器 (regedit)。删除以下路径下所有与“奇安信”、“Qianxin”、“天擎”、“Safedog”相关的项文件夹HKEY_LOCAL_MACHINE\SOFTWARE\QianxinHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\(找到对应的GUID项删除)HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\QianxinHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\(这里存放驱动和服务找到以天擎相关命名的项务必确认无误后再删除)HKEY_CURRENT_USER\Software\Qianxin(如果存在)在注册表编辑器中按CtrlF搜索“Qianxin”、“天擎”等关键词删除所有找到的项Key但要小心不要误删其他软件的值Value。6.3 清理计划任务和启动项运行taskschd.msc打开任务计划程序在左侧“任务计划程序库”中查找并删除与天擎相关的计划任务。运行shell:startup打开当前用户的启动文件夹删除相关快捷方式。运行shell:common startup打开所有用户的启动文件夹同样检查。使用msconfig或任务管理器的“启动”选项卡禁用任何相关的启动项。7. 终极方案与疑难问题排查如果上述所有方法都失败了或者系统已经因为软件冲突无法正常启动我们就需要祭出终极方案。7.1 使用Windows PE环境进行离线删除这是对付所有顽固软件的最后手段因为PE环境下你的主Windows系统并未运行所有保护机制都形同虚设。准备一个Windows PE启动U盘可用微软官方工具制作。从U盘启动电脑进入PE环境。在PE中直接浏览到系统盘通常是C盘找到天擎的安装目录直接删除整个文件夹。如果需要清理注册表PE环境通常带有注册表编辑器工具。你可以加载离线系统的注册表配置单元运行PE中的regedit。选中HKEY_LOCAL_MACHINE。点击“文件”-“加载配置单元”浏览到C:\Windows\System32\config\SOFTWARE文件你的系统盘符。它会让你输入一个临时项名称比如“Offline_SOFTWARE”。然后你就可以像操作本地注册表一样在HKEY_LOCAL_MACHINE\Offline_SOFTWARE下进行清理路径与之前所述一致。操作完成后选中“Offline_SOFTWARE”项点击“文件”-“卸载配置单元”。同样方法可以处理SYSTEM配置单元对应C:\Windows\System32\config\SYSTEM以清理驱动服务。7.2 常见问题与排查技巧实录即使操作顺利后续也可能遇到一些问题。以下是一些常见坑点问题1卸载后电脑重启天擎又“复活”了。排查这说明有残留的服务或计划任务没有被禁用/删除或者组策略强制重新安装。请重新进入安全模式使用sc query命令仔细检查所有服务状态使用任务计划程序彻底清查。如果是域控电脑组策略推送无法本地避免需联系管理员。问题2安装其他安全软件如另一款杀毒软件时提示冲突或不兼容。排查这是注册表或驱动残留的典型表现。特别是安全软件都会检查系统底层钩子Hook和过滤驱动Filter Driver。使用像PCHunter或Autoruns这样的工具仔细检查“驱动”、“Winlogon”、“AppInit_DLLs”等标签页清理所有与天擎相关的条目。问题3手动删除文件时提示“文件正在使用”即使在安全模式下。排查可能文件被Windows资源管理器explorer.exe本身或PE环境下的工具打开了。尝试在PE环境下使用命令行del /f 文件名强制删除或者使用PE集成的第三方文件粉碎工具。问题4系统出现不稳定或蓝屏。排查最可能的原因是误删了系统关键的驱动或注册表项。如果做了注册表备份立即恢复。如果没有可以尝试在Windows高级启动选项中选择“最后一次正确的配置”启动。最坏的情况是使用系统还原点或进行修复安装。我的核心经验整个过程像一场外科手术讲究精准和顺序。“暂停进程树”是打破守护循环的神来之笔比强行结束有效得多。对于驱动安全模式是我们的主战场能解决90%的权限问题。永远记住离线PE环境是终极武器当系统内的方法全部无效时它总能给你一个干净的操作空间。最后胆大心细每一步操作前都问自己“如果这一步出错我能不能回退”做好备份尤其是注册表是避免系统瘫痪的最后保险。

相关新闻

基于Docker部署人大金仓数据库:从镜像构建到生产实践

基于Docker部署人大金仓数据库:从镜像构建到生产实践

1. 项目概述:为什么要在Docker里跑人大金仓?最近在搞一个数据中台的原型验证,后端选型时,客户明确要求必须支持国产数据库。几轮对比下来,人大金仓(KingbaseES)进入了我们的视野。它作为一款成熟…

2026/10/17 22:43:06 阅读更多 →
Linux SSH密钥全生命周期管理:从生成到轮换的安全实践指南

Linux SSH密钥全生命周期管理:从生成到轮换的安全实践指南

1. 从一次“神秘”的登录失败说起那天下午,我正远程维护一台部署在云上的生产服务器。像往常一样,我打开终端,输入ssh userserver_ip,敲下回车,等待熟悉的密码提示。然而,屏幕上弹出的不是密码输入框&#…

2026/10/17 23:30:10 阅读更多 →
2024年番禺外贸网站建设指南:如何打造高转化率的全球获客利器

2024年番禺外贸网站建设指南:如何打造高转化率的全球获客利器

在这个数字化浪潮席卷全球的今天,番禺的制造企业主们站在珠江口的南岸,手里握着的是世界级的产能和过硬的产品质量,但很多时候,你们的嗓子却被困在了本土的喧嚣里。为什么?因为懂你们的人,可能根本不知道你们在哪里;想找你们的人,在茫茫网海中连个浪花都看不到。这就不…

2026/10/17 23:30:10 阅读更多 →

最新新闻

加载结果数据的工程化指南:从异步分页到弱网优化

加载结果数据的工程化指南:从异步分页到弱网优化

1. 从一句“加载结果数据”说起的真实场景如果你在代码仓库里翻到一个只有“加载结果数据”六个字的提交记录,第一反应大概率是困惑。这也太模糊了。可真正做过数据处理或者后台管理系统的人都会心一笑——这六个字背后,往往藏着一整套“从数据源取数&am…

2026/10/17 23:29:26 阅读更多 →
Unity URP Bloom后处理全解析:从原理到手写RenderFeature

Unity URP Bloom后处理全解析:从原理到手写RenderFeature

做渲染效果的时候,Bloom(泛光)大概是最容易快速提升画面质感的一项。低强度模式下,它能让霓虹灯、屏幕反光、金属高光边缘柔化出一圈渐变光晕;高强度模式下,又能把普通灯具变成那种梦幻的“发光体”。在 Un…

2026/10/17 23:29:26 阅读更多 →
Cocos2d-x LuaJIT二进制库链接避坑指南

Cocos2d-x LuaJIT二进制库链接避坑指南

简介:本资源是专为Cocos2d-x iOS平台开发者提供的libluajit.a兼容性修复库,聚焦解决cocos2d-x在iPhone 5S及更高型号设备上因LuaJIT架构不匹配导致的lua_open()调用崩溃问题。适用于中高级移动游戏开发工程师,尤其在使用旧版cocos2d-x集成Lua…

2026/10/17 23:29:26 阅读更多 →
大数据技术原理与应用测试题考点全解析与三轮复习法

大数据技术原理与应用测试题考点全解析与三轮复习法

简介:这套《大数据技术原理应用》测试题以docx文档形式整理,面向高校大数据专业学生、课程备考者及自学爱好者,用于系统检验大数据基础理论、关键技术与应用框架的掌握程度。文档共58页,包内仅1个文件,整体大小76KB&am…

2026/10/17 23:29:26 阅读更多 →
mmdetection模型解析:从配置文件到检测框的完整拆解

mmdetection模型解析:从配置文件到检测框的完整拆解

1. 从配置文件到检测框:mmdetection模型解析到底在解析什么刚接触mmdetection的人,十有八九会被它那套配置文件体系绕晕。打开一个configs/目录下的py文件,里面嵌套着model、data、schedule、runtime好几层字典,每个字典里又套着b…

2026/10/17 23:29:26 阅读更多 →
Oracle基金交易平台实战:七张表设计+PL/SQL全流程开发

Oracle基金交易平台实战:七张表设计+PL/SQL全流程开发

简介:面向Oracle数据库学习者的项目实战文档,聚焦基金交易平台的数据库设计,适合正在准备项目实训或课程设计的开发人员。文档以招商银行某分行的开放式基金交易系统为业务背景,先梳理基金管理、客户账户管理、交易审核等核心功能…

2026/10/17 23:28:25 阅读更多 →

日新闻

DeepSeek选型与部署:V3/R1、Ollama、API全攻略

DeepSeek选型与部署:V3/R1、Ollama、API全攻略

简介:《DeepSeek使用方法.pdf》是一份面向DeepSeek入门及进阶用户的完整使用指南,重点围绕V3与R1两款模型的能力差异与适用场景展开,帮助读者根据任务类型与成本选择合适的模型。资源共1个PDF文件,压缩包大小约311KB,篇…

2026/10/17 0:00:25 阅读更多 →
200+Deepseek润色指令拆解:从底层原理到场景落地的完整指南

200+Deepseek润色指令拆解:从底层原理到场景落地的完整指南

简介:这是一份聚焦DeepSeek提示词优化的《200Deepseek润色指令》PDF文档,共收录两百余条可直接套用的润色指令,涵盖语法修正、风格统一、逻辑梳理、表达精炼等维度,并针对商务写作、学术论文、广告文案等场景给出差异化建议。文档…

2026/10/17 0:00:25 阅读更多 →
OpenCV轮廓法物体计数系统:轻量、可控、可落地的工业级实现

OpenCV轮廓法物体计数系统:轻量、可控、可落地的工业级实现

简介:本资源是一份基于OpenCV的本科课程设计完整报告,面向计算机视觉初学者、图像处理学习者及高校通信/信息类专业学生,解决物体智能计数与检测结果结构化记录的实际问题。项目覆盖图像预处理、轮廓检测、边界框绘制、轨迹栏交互式参数调节、…

2026/10/17 0:00:25 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/16 21:35:51 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/17 1:44:59 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/16 15:04:24 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 21:54:38 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 17:22:31 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 14:23:36 阅读更多 →