# SkcDeskTools **Repository Path**: macplus/skc-desk-tools ## Basic Information - **Project Name**: SkcDeskTools - **Description**: skc桌面工具,支持skc升级等操作 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-22 - **Last Updated**: 2026-05-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SKC 桌面升级工具
[![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) [![Node](https://img.shields.io/badge/node-%3E%3D23.0.0-brightgreen.svg)](https://nodejs.org/) [![Vue](https://img.shields.io/badge/vue-3.5.32-brightgreen.svg)](https://vuejs.org/) [![Electron](https://img.shields.io/badge/electron-41.0.3-blue.svg)](https://www.electronjs.org/) [![Element Plus](https://img.shields.io/badge/element--plus-2.13.7-409EFF.svg)](https://element-plus.org/) 基于 Electron + Vite + Vue 3 + TypeScript 构建的现代化 SKC 桌面管理工具
--- ## 📋 项目简介 **SKC 桌面升级工具**是一款专为 SKC 系统设计的桌面辅助应用,提供版本管理、数据库配置、备份恢复等核心功能,简化 SKC 系统的日常维护和升级操作。 ### ✨ 核心特性 - 🔄 **智能升级**: 自动检测版本差异,执行增量升级 - 💾 **数据备份**: 支持部署文件和数据库的完整备份与恢复 - 🔧 **配置管理**: 可视化的数据库配置查看与连接测试 - 📊 **版本对比**: 实时显示当前版本与新版本信息 - 🎨 **现代界面**: 基于 Element Plus 的优雅用户界面 - 🔒 **安全可靠**: 遵循 Electron 安全最佳实践 --- ## 🛠️ 技术架构 ### 核心技术栈 | 技术 | 版本 | 说明 | |------|------|------| | Electron | 41.0.3 | 跨平台桌面应用框架 | | Vite | 8.0.9 | 极速前端构建工具 | | Vue | 3.5.32 | 渐进式 JavaScript 框架 | | TypeScript | 6.0.2 | 类型安全的 JavaScript | | Element Plus | 2.13.7 | Vue 3 组件库 | | electron-builder | 26.8.1 | 应用打包工具 | | mysql2 | ^3.22.2 | MySQL 数据库驱动 | ### 项目结构 ``` deskTool/ ├── packages/ │ ├── main/ # Electron 主进程 (TypeScript) │ │ └── src/ │ │ ├── modules/ # 功能模块 (窗口管理、自动更新等) │ │ └── index.ts # 主进程入口 │ ├── preload/ # 预加载脚本 (IPC 桥接) │ └── renderer/ # Vue 3 渲染进程 (前端界面) │ └── src/ │ ├── page/ # 页面组件 │ ├── utils/ # 工具函数 │ └── router/ # 路由配置 ├── config/ # 配置文件 ├── buildResources/ # 构建资源 ├── tests/ # E2E 测试 └── types/ # TypeScript 类型定义 ``` --- ## 🚀 快速开始 ### 环境要求 - **Node.js** >= 23.0.0 - **npm** >= 10.0.0 - **Windows** 7 或更高版本 (64位) ### 安装与运行 ```bash # 1. 克隆项目 git clone https://gitee.com/macplus/skc-desk-tools.git cd deskTool # 2. 安装依赖 npm install # 3. 启动开发模式 npm start # 4. 编译打包 (生成可执行文件) npm run compile ``` 打包完成后,可在 `dist` 目录找到安装程序: - Windows: `root-{version}-win-x64.exe` ### 常用命令 | 命令 | 说明 | |------|------| | `npm start` | 启动开发服务器 (支持热重载) | | `npm run compile` | 编译并打包应用 | | `npm run build` | 仅构建所有包 | | `npm run typecheck` | TypeScript 类型检查 | | `npm test` | 运行 E2E 测试 | --- ## 📖 功能说明 ### 1. 系统设置 (`setting_page`) - **路径配置**: 设置新版本安装包路径、当前部署路径、备份目录路径 - **版本信息**: 自动读取并显示当前版本和新版本信息 - **数据库配置**: 读取并展示数据库连接配置 - **连接测试**: 支持测试数据库连接是否正常 ### 2. 版本升级 (`upgrade_page`) - **智能检测**: 自动识别版本差异 - **增量升级**: 按版本号顺序执行 SQL 升级脚本 - **升级顺序**: 先升级数据库,后升级部署包 - **进度展示**: 实时显示升级进度和状态 ### 3. 备份管理 #### 部署备份 (`backup_deploy_page`) - 备份当前部署的 webapps 文件 - 支持选择历史备份进行恢复 #### 数据库备份 (`backup_database_page`) - 使用 mysqldump 工具备份数据库 - 支持查看和恢复历史备份 #### 备份恢复 (`restore_page`) - 查看备份列表 (按版本组织) - 支持恢复指定版本的备份 ### 4. 工具集 (`tools_page`) 提供常用的系统维护工具和快捷操作。 --- ## 🔌 进程通信 ### 渲染进程 → 主进程 ```typescript // renderer - 调用主进程方法 import { FarmParasUtils } from '../utils/farmParasUtils' const result = await FarmParasUtils.selectDirectory({ title: '选择目录' }) ``` ### 主进程暴露 API ``typescript // preload - 桥接层 contextBridge.exposeInMainWorld('farmParasAPI', { selectDirectory: (options) => ipcRenderer.invoke('select-directory', options), // ... 其他 API }) ``` --- ## 📝 开发规范 ### 代码风格 - ✅ 使用 TypeScript 编写所有代码 - ✅ Vue 组件使用 Composition API (`