# CN_Tool 品牌与隔离残留清单 ## 目标 - 对外名称统一为:`CN_Tool 灿能运维工具` - 打包产物、运行目录、快捷方式、窗口标题等内部标识统一为:`CN_Tool` - 当前 C 端的启动、关闭、打包、升级、回滚,不影响已运行的 `NPQS-9100` 客户端 ## 当前判断 - `frontend/` 源码内已基本没有 `NPQS-9100`、`自动检测平台` 等字样 - 残留主要集中在 Electron 壳层、打包配置、启动页、运行时目录、日志文案、批处理脚本和文档 - 目前存在“命名混用”和“进程误伤”两类问题,后者优先级更高 ## 当前进度 - 已完成:打包产物名、快捷方式名、输出目录切换到 `CN_Tool` - 已完成:主窗口标题和实例识别逻辑切换到 `CN_Tool 灿能运维工具` - 已完成:运行目录与数据目录切换到 `CN_Tool_Runtime`、`CN_Tool_Data` - 已完成:MySQL 与 JAR 进程标记和定向清理,仅处理当前应用自己的进程 - 已完成:启动页、日志窗口、启动日志文案切换到 `CN_Tool 灿能运维工具` - 已完成:`data/system.json` 历史标题切换到 `CN_Tool 灿能运维工具` - 已完成:`build/` 下主要批处理脚本切换到 `CN_Tool` - 已完成:历史文档中的旧品牌命名、目录名和可执行文件说明切换到 `CN_Tool` - 已处理:旧文件名 `NPQS-9100绿色包完整指南.md` 目前保留为兼容跳转说明 ## 一、品牌命名残留 ### 1. 打包与快捷方式 - `package.json` - 已修改为将输出目录重命名为 `out/CN_Tool` - `cmd/builder.json` - 已修改为 `productName: CN_Tool` - 已修改为 `shortcutName: CN_Tool` - 已修改为独立的 `appId` ### 2. 桌面壳层显示名称 - `electron/config/config.default.js` - 主窗口标题已修改为 `CN_Tool 灿能运维工具` - `electron/main.js` - 已切换到当前应用自己的主窗口定位函数,不再依赖 `NPQS`、`检测平台` 识别实例 - 托盘提示已改为 `CN_Tool 灿能运维工具` - `public/html/loading.html` - 启动页标题与页面主文案已改为 `CN_Tool 灿能运维工具` - `data/system.json` - 菜单与系统标题已改为 `CN_Tool 灿能运维工具` ### 3. 日志与运行时文案 - `electron/preload/lifecycle.js` - 启动成功、启动中、应用启动日志已改为 `CN_Tool 灿能运维工具` - `scripts/log-window-manager.js` - 日志窗口标题、HTML 标题、启动日志已改为 `CN_Tool 灿能运维工具` ### 4. 运行目录与数据目录 - `scripts/path-utils.js` - 已修改为 `CN_Tool_Runtime` - `scripts/config-generator.js` - 已修改为 `CN_Tool_Data` ## 二、隔离风险残留 ### 1. 可能误识别为旧客户端 - `electron/config/config.default.js` - `singleLock: true` 保持开启,但已配合新窗口标题使用 - `electron/main.js` - `second-instance` 已改为只定位当前应用自己的主窗口 - 当前剩余风险主要在旧命名文案与外部脚本,不在窗口聚焦逻辑 ### 2. 批处理脚本会直接影响旧客户端 - `build/clean-and-build.bat` - 已改为仅结束 `CN_Tool.exe` - `build/upgrade.bat` - 已改为仅结束 `CN_Tool.exe` - `build/rollback.bat` - 已改为仅结束 `CN_Tool.exe` - `build/diagnose-startup.bat` - 已改为检查 `CN_Tool.exe` - 已同步更新默认日志目录与当前启动端口 ### 3. MySQL 清理逻辑过于粗暴 - `scripts/mysql-process-manager.js` - 已改为基于运行标记、PID 与配置路径校验,仅清理当前应用自己的 MySQL - `scripts/java-runner.js` - 已补充 JAR 进程标记,关闭时优先按已记录 PID 清理,仅处理当前应用自己的 Java/JAR 进程 - 风险说明 - 当前不再按全局 `mysqld.exe` 或模糊 Java 进程做粗暴清理 - 关闭时仅针对当前应用自己启动并校验通过的 MySQL/JAR 进程执行清理 ## 三、建议修改顺序 ### 第一批:先做隔离,避免误伤 - 已完成:修改 `cmd/builder.json`、`package.json`,把产物名、快捷方式、输出目录切到 `CN_Tool` - 已完成:修改 `electron/main.js` 与 `electron/config/config.default.js`,移除对 `NPQS`、`检测平台` 的实例识别依赖 - 已完成:修改 `scripts/path-utils.js` 与 `scripts/config-generator.js`,把运行目录和数据目录切到 `CN_Tool_Runtime`、`CN_Tool_Data` - 已完成:重构 `scripts/mysql-process-manager.js` 与 `scripts/java-runner.js`,通过进程标记仅清理当前应用自己的 MySQL/JAR 进程 ### 第二批:统一品牌展示 - 已完成:修改窗口标题、托盘提示、启动页文案、日志窗口标题 - 已完成:修改 `data/system.json` 中的历史菜单标题 ### 第三批:收尾清理 - 已完成:修改 `build/` 下批处理脚本中的旧命名 - 已完成:修改 `doc/` 中仍保留的 `NPQS-9100` 历史说明 ## 四、执行原则 - 每次只改一类问题,避免混改 - 优先改“会影响旧客户端运行”的逻辑,再改展示文案 - 关键业务节点补充 UTF-8 中文注释,说明为什么这样改 - 每次修改后,至少检查受影响文件的调用链和配置一致性