feat: 统一项目命名并补充路径失效报告

将内部项目目录、命名空间、配置目录、自启注册表值和设计/开发文档统一为 PersonalToolbox。

扩展路径校验服务,输出失效工具、字段、原因和路径,并在启动日志、设置页路径检查与导入配置流程中展示明细报告。

验证:dotnet build PersonalToolbox.sln
This commit is contained in:
2026-05-27 14:20:19 +08:00
parent dfc306818a
commit 26a22eef1c
32 changed files with 236 additions and 150 deletions

View File

@@ -2,23 +2,24 @@
## 当前项目状态
- 项目名称Personal Toolbox / ToolboxApp
- 项目名称Personal Toolbox / PersonalToolbox
- 技术栈WPF + .NET 8 + C#
- 架构方向MVVM 分层UI 层通过 ViewModel 调用服务层
- 当前阶段MVP 基础版本已搭建,可编译运行
- 主要入口:`src/ToolboxApp/MainWindow.xaml`
- 主要入口:`src/PersonalToolbox/MainWindow.xaml`
- 配置目录:`%AppData%\PersonalToolbox`
## 已实现能力
1. 基础工程
- `PersonalToolbox.sln`
- `src/ToolboxApp/ToolboxApp.csproj`
- `src/PersonalToolbox/PersonalToolbox.csproj`
- WPF 桌面应用,启用 WinForms 托盘能力
- 内部命名空间、项目路径、启动项名称和配置目录已统一为 `PersonalToolbox`
2. 数据与配置
- 本地 JSON 配置读写
- 原子写入:先写 `.tmp`,再替换正式文件
- 默认配置目录:`%AppData%\ToolboxApp`
- 配置文件:
- `appsettings.json`
- `categories.json`
@@ -26,6 +27,7 @@
- `autorun.json`
- `icons/`
- 导入、导出、重置配置基础能力
- 路径失效检查会输出具体工具、字段、原因和路径
3. 工具模型
- 系统工具
@@ -60,7 +62,7 @@
- 托盘常驻服务
- 托盘菜单:显示/隐藏主界面、全局快捷键开关、设置、退出
- 关闭窗口时隐藏到托盘
- 当前用户开机自启
- 当前用户开机自启,注册表值名为 `PersonalToolbox`
- 全局快捷键注册、注销、内部冲突和注册失败提示
8. 界面
@@ -73,6 +75,15 @@
- 设置窗口
- 主要 UI 元素均提供 `ToolTip` 悬浮说明
## 最近开发记录
### 2026-05-27
- 将项目内部名从旧临时代号统一更改为 `PersonalToolbox`包括目录、项目文件、命名空间、XAML 类名、配置目录、自启注册表值和导出文件名。
- 设计文档中的临时代号和 AppData 路径同步改为 `PersonalToolbox`
- 路径失效检查从单纯数量扩展为明细报告,设置页导入配置后也会提示具体失效工具。
- 验证命令:`dotnet build PersonalToolbox.sln`,结果为 0 警告、0 错误。
## 运行与验证
构建:
@@ -84,7 +95,7 @@ dotnet build PersonalToolbox.sln
运行:
```powershell
dotnet run --project src\ToolboxApp\ToolboxApp.csproj
dotnet run --project src\PersonalToolbox\PersonalToolbox.csproj
```
当前验证结果:
@@ -98,7 +109,7 @@ dotnet build PersonalToolbox.sln
## 目录说明
```text
src/ToolboxApp
src/PersonalToolbox
├─ Commands 命令封装
├─ Models 工具、分类、组合、配置、日志等模型
├─ Services 配置、启动、托盘、自启、快捷键、路径校验等服务
@@ -116,10 +127,11 @@ src/ToolboxApp
- 配置写入必须保持原子写入策略,避免中途失败写坏 JSON。
- 快捷键必须包含至少一个修饰键,不支持纯单键快捷键。
- 开机自启只写当前用户注册表,不要求管理员权限。
- 本项目尚未投入使用,不需要维护旧临时代号对应配置目录的兼容迁移。
## Git 记录约定
提交信息使用 Conventional Commits 格式,并使用中文说明:
提交信息使用 Conventional Commits 格式,并使用中文说明标题和正文
```text
feat: 添加某项用户能力
@@ -142,6 +154,5 @@ feat: 添加某项用户能力
2. 更完整的图标选择器和分类图标编辑。
3. 更细的快捷键录入控件,减少手写格式错误。
4. 拖拽调整卡片和分类顺序。
5. 导入配置后的更详细路径失效报告
6. UI 视觉打磨和深浅色主题。
7. 为组合校验、快捷键解析和配置读写增加单元测试。
5. UI 视觉打磨和深浅色主题
6. 为组合校验、快捷键解析和配置读写增加单元测试。